0

我有这个应该填写下拉列表的 php 脚本;我实际上将它嵌入到元素中,但它不起作用。这是我的脚本,可以清楚地解释我的问题:

<select name="cats">
   <?php
   require_once("connection.php");
   $rs = mysql_query("select cat_name from category");
   $count = 0;
   while($array = mysql_fetch_array($rs)){
    echo "<option>".$array[$count]."</option>";
   }
   mysql_close($con);
   ?>

  </select>

如果你能帮我定义错误,如果这是错误的方法;最好的方法是什么。我会很感激实施。提前致谢 :)

4

3 回答 3

1

改变:

while($array = mysql_fetch_array($rs)){
   echo "<option>".$array[$count]."</option>";
}

while($array = mysql_fetch_array($rs)){
    echo "<option value='".$array["cat_id"]."'>".$array["cat_name"]."</option>";
}

cat_id您的类别表的 id 在哪里

于 2013-02-03T10:08:37.097 回答
0

我认为您的代码没有任何问题,请再次检查您的数据库连接并尝试。因为我在本地主机中尝试您的代码并在下拉列表中获取 cat_name。

于 2013-02-04T10:41:49.613 回答
0

一般来说,这是正确的方法。我认为问题出在这里:

echo "<option>".$array[$count]."</option>";

$count必须为 0,因此您将始终输出$array[0],这是被选择的第一个字段(通常是某种 ID,但它取决于表结构)。这可能是也可能不是表中的正确字段。

我建议首先指定您选择的确切字段。例如:

select `id`, `text` from `category`

然后使用关联数组$array得到你想要的,例如:$array['id']

于 2013-02-03T10:08:24.900 回答