从数据库中获取值时遇到问题。
我想做的是: 我在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>£$price</td><tr>"; }
}
}
我被困在这里,尝试了其他一些选择..而且只会变得更糟......
我错了..如果有人可以提供帮助会很好。
提前谢谢!
答案 0 :(得分: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>£$price</td><tr>"; }
}
}
似乎变量$ row1在任何地方都没有使用。