gpt4 book ai didi

php - MySQL/PHP - 只显示第一行两次

转载 作者:行者123 更新时间:2023-11-28 23:19:36 26 4
gpt4 key购买 nike

我试图让我的 PHP 在下拉菜单中显示所有产品名称。但是它只显示第一行两次。

$prodNameSQL="select prodName from product";

//execute SQL query or return an error
$exeProdNameSQL=mysql_query($prodNameSQL) or die(mysql_error());

//create array of records & populate it with result of the execution of the SQL query
$array=mysql_fetch_array($exeProdNameSQL);

echo "<select name='productCombo'>";
foreach($array as $value) {

echo "<option value=".$value.">".$value;
echo "</option>";

}
echo "</select>";

我知道我应该使用 mysqli 并且 mysql 已贬值,但它超出了我的控制范围。

谢谢。

最佳答案

当您调用 mysql_fetch_array 时,mysql 驱动程序会从您的结果集中返回一行。通过对该结果 ($array) 执行 foreach,您可以有效地遍历单行中的列。

你需要执行:

while ($array = mysql_fetch_array($exeProdNameSQL)) {
// output your dropdown options here
}

这将允许您迭代查询返回的每个结果。


另外,mysql 扩展在很早以前就被弃用了(php5.5),而 php5.6 已经到了生命周期的尽头,也基本上被弃用了。 mysql 扩展在 php7.0+ 中不可用,因此如果您尝试在最新系统上运行此代码,它将失败。

您应该强烈考虑升级到 MySQL PDO 驱动程序 (http://php.net/manual/en/ref.pdo-mysql.php)。

关于php - MySQL/PHP - 只显示第一行两次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42376210/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com