0

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

<?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.";
?>
4

2 回答 2

0

更改$item[name]$item['name']使用它的位置。

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

$item = mysql_fetch_array($mysqlq);
于 2012-08-11T20:22:32.057 回答
0

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

还要使用''中的所有变量。$row[name] 作为 $row['name']。

编辑

你用过这条线$item = mysql_fetch_array($mysqlq);。这将失去结果。

于 2012-08-11T20:44:40.477 回答