0

データベースからの値の取得に問題があります。

私がやろうとしていることは、packaging_itemsテーブルの変数'varname'を使用することです(値はパッケージングテーブルの列の名前に対応しています... pack01、pack02 ..など)。しかし、クエリresult1では、(pack01、pack02 ..)の値を取得する代わりに、列の名前(pack01、pack02 ..)を取得します。これが私のショートコードです:(もちろん、それ以上のものがありますが、このビットが最も重要です)。

    $result = mysql_query("SELECT * FROM packaging_items") or die(mysql_error());  
while($row = mysql_fetch_array($result)) {  
    $data1 = $row['varname']; 
    $name = $row['name']; 
    $price = $row['price']; 

$result1=mysql_query("SELECT `$data1` FROM packaging WHERE orderno='$orderno' LIMIT 1") or die(mysql_error()); 
while($row1 = mysql_fetch_array( $result1 )) { 
    if ( $data1 == '' ) {} else { 
    echo" <tr><td>$name</td><td>$data1</td><td>&pound;$price</td><tr>"; } 
} 
}  

私はここで立ち往生し、他のいくつかのオプションを試しました..そして最悪になるだけです..

私は何を間違っていますか..誰かが助けることができればいいでしょう。

前もって感謝します!

4

1 に答える 1

0

これで問題が解決するかどうかはわかりませんが、とにかく次のようにしてみてください。

$result = mysql_query("SELECT * FROM packaging_items") or die(mysql_error());  
while($row = mysql_fetch_assoc($result)) {  
    $data1 = $row['varname']; 
    $name = $row['name']; 
    $price = $row['price']; 
$query = "SELECT $data1 FROM packaging WHERE orderno='$orderno' LIMIT 1";
echo $query;
$result1=mysql_query($query) or die(mysql_error()); 
while($row1 = mysql_fetch_assoc( $result1 )) {

    if ( $data1 == '' ) {} else { 
    echo" <tr><td>$name</td><td>$data1</td><td>&pound;$price</td><tr>"; } 
} 
} 

変数 $row1 はどこにも使用されていないようです。

于 2013-01-08T07:54:59.210 に答える