gpt4 book ai didi

php - MySQL 回显同时

转载 作者:行者123 更新时间:2023-11-29 10:47:39 29 4
gpt4 key购买 nike

大家好,我正在开发一个动态网站,当我尝试回显结果时遇到了一些麻烦。如果有人可以帮助我,我将不胜感激。

<?php 
$page = "SELECT * FROM Paginas";
$execute = $connect->query($page);
$pagename = $execute->fetch_all(MYSQL_ASSOC);
if ($connect->$page !== false){
$maximo = "SELECT MAX(ID) FROM Paginas";
$execute1 = $connect->query($maximo);
$i = 0;
while ($i <= $execute1){
echo "<li><a href=#" . $pagename[$i]['Nome'] . ">".$pagename[$i]['Nome'] ."</a></li>";
$i++;
}
}
?>

问题是我有 3 个 ID 页,但它只显示其中 2 个。我有

ID 1 - Home
ID 2 - HardSecure
ID 3 - Services

数据库中的所有内容均正确填写,但 while 循环未检索它。

最佳答案

您的代码中有些内容没有多大意义,特别是您的 while 的参数( $i <= $execute1 将整数与 bool 值进行比较)并将您的参数传递给 if ( $connect->$page !== false 尝试使用查询字符串作为 mysqli 对象的属性)。

您也不应该使用MAX()作为了解何时获取所有行的可靠方法,因为这可能会返回数字 3,但如果您只有 2 条记录(例如),则 MAX()不准确,会给您提供错误的结果。如果修改或删除一行,则表中的 ID 可能不连续。

您应该使用 fetch_assoc()作为 while 的参数,或者保留 fetch_all()并使用 foreach 。在任何情况下,它将循环遍历返回的所有行,并在迭代完每一行后停止循环。我将使用第一个。

$page = "SELECT * FROM Paginas";
if ($execute = $connect->query($page))
while ($row = $execute->fetch_assoc()) {
echo "<li><a href=#" . $row['Nome'] . ">".$row['Nome'] ."</a></li>";
}
}

您应该参阅每个功能的手册以获取更多详细信息。我建议您阅读每个函数并了解它们的实际用途,因为这将帮助您进一步构建应用程序。

关于php - MySQL 回显同时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44286325/

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