以下拉形式从MySQL数据库列出数据不起作用?

时间:2012-08-11 20:08:35

标签: php mysql html

由于某种原因,这是行不通的,即使我没有错误。下拉框保持空白。我正在尝试使用它来创建一个下拉列表,显示用户当前拥有的项目。谢谢你的阅读。

<?php
$username = $_SESSION['username'];
$id = $_GET['id'];
$action = $_GET['action'];
$result = @mysql_query("SELECT * FROM items WHERE id = '$id'");
$row = mysql_fetch_assoc($result);

echo "<center><b> $row[name] </b><br><b>Uses: $row[uses]</b></center>";

if($action = "use")
{
if($row['type'] = "food")
{
$id = $_GET['id'];
$mysqlq = @mysql_query("SELECT * FROM items WHERE owner = '$username'");
$item = mysql_fetch_array($mysqlq);

echo 
"
<form action='items.php?id=$id' name=itemform>
<select name='itemtouse'>
";
while ($item = mysql_fetch_array($mysqlq)) 
{
echo "<option value=" . $item[name] . ">" . $item[name] . "</option>";
}
echo "</select><input type=submit name=submit value=Use></input></form>";

}
else echo "This item doesn't exist.";
}
else echo "This item is not a food type.";
?>

2 个答案:

答案 0 :(得分:0)

$item[name]更改为使用它的$item['name']

并删除不需要的(在while循环中进行分配)行:

$item = mysql_fetch_array($mysqlq);

答案 1 :(得分:0)

请在mysql_query中尝试不使用@。 因为该表达式可能生成的任何错误消息都将被忽略。

还要使用''里面的所有变量。 $ row [name] as $ row ['name']。

修改

您已使用第$item = mysql_fetch_array($mysqlq);行。这将失去结果。