php - 我的 php 不能正常工作,我可以找到问题
问题描述
我希望它从我的数据库中获取值并回显到网页,但它回显没有找到任何结果。
我的代码:
//Variables
$Host = 'localhost';
$UserName = 'root';
$Password = 'NOP';
$DataBaseName = 'BoosTemplatesDB';
$DEBUG = True;
$link = mysqli_connect($Host, $UserName, $Password, $DataBaseName);
$query_items = 'SELECT * FROM Products WHERE ID = 6';
$result = $link->query($query_items);
if (mysqli_num_rows($result) > 0) {
// Fetch one and one row
while ($row = $result->fetch_assoc()) {
echo $row[1];
}
} else {
echo 'No result found';
}
解决方案
您混合了程序风格和面向对象的风格。
你正在$link->query($query_items);
使用面向对象的类。在这里,mysqli_num_rows($result)
您正在使用程序样式对其进行验证。
尝试使用
$link = mysqli_connect($Host, $UserName, $Password, $DataBaseName);
$query_items = 'SELECT * FROM Products WHERE ID = 6';
$result = $link->query($query_items);
if ($result->num_rows > 0) {
// Fetch one and one row
while ($row = $result->fetch_assoc()) {
echo $row[1];
}
} else {
echo 'No result found';
echo $link->error; // show last error.
}
编辑:添加 $link->error; 查看最后一个错误以进行调试。
希望能帮助到你。
正如 Qirel 所说,您可以从文档PHP 手册参考中混合过程和面向对象
混合风格
可以随时在样式之间切换。出于代码清晰和编码风格的原因,不建议混合使用这两种风格。
推荐阅读
- xamarin.forms - Xamarin Forms:如何实现位置共享功能?
- npm - 使用相对路径为长路径配置 npm&webpack Win10
- javascript - 检查数组中的任何数字是否大于给定数字Javascript
- html - 无法单击按钮关闭消息
- arrays - 在 c 中创建一个只能使用函数 printf 和 putchar 的计算器,并且可以使用非常大的整数
- java - 找不到适合 jbdc 的驱动程序:mysql://localhost:3306/passwortmanager?serverTimezone=UTC&useLegacyDatetimeCode=false
- python - ModelForm 在 Django 中没有指定模型类
- javascript - 为什么我不能用字符串中的空格替换元音?
- python - 如何为彩虹表制作一个像样的 R 函数?
- python - Django ListView 未显示在前端