php - 我调用了数据并尝试使用 fetch_assoc 但没有出现
问题描述
我这样做是为了显示数据,但没有出现任何内容,并且在编码中没有显示错误
有没有人可以帮助我
<?php
require 'db_connect.php';
$sql_get = "SELECT * FROM daftarumkm ORDER BY id_daftar DESC";
$query = $con->query($sql_get);
$response_data = null;
while ($data = $query->fetch_assoc()) {
$response_data[] = $data;
}
if (is_null($response_data)) {
$status = true;
} else {
$status = true;
}
这是 db_connect.php
<?php
define('DB_USER', "root"); // db user
define('DB_PASSWORD', ""); // db password (mention your db password here)
define('DB_DATABASE', "data_umkm"); // database name
define('DB_SERVER', "localhost"); // db server
$con = mysqli_connect(DB_SERVER,DB_USER,DB_PASSWORD,DB_DATABASE);
// Check connection
if(mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
?>
解决方案
您从数据库中获取数据的代码很好,但还有一些其他问题。
1)如果你想检查你是否从变量中的数据库得到结果,$response_data
你在这里犯了一个错误
if (is_null($response_data)) {
$status = true;
} else {
$status = true;
}
您可能想将其更改为
if (is_null($response_data)) {
$status = false;
} else {
$status = true;
}
我应该提一下,有更好的方法可以做到这一点。而不是上面的 4 行,你可以简单地写$status = (is_null($response_data)) ? false : true;
2)此外,而不是所有的行
$response_data = null;
while ($data = $query->fetch_assoc()) {
$response_data[] = $data;
}
if (is_null($response_data)) {
$status = true;
} else {
$status = true;
}
您可以编写以下更高效的代码:
$response_data = $query->fetch_all(MYSQLI_ASSOC);
$status = ($response_data) ? false : true;
3)最后,如果您想查看结果,只需使用该var_dumb()
功能即可。
var_dumb($response_data);
推荐阅读
- mongodb - 无法在 Spring Boot 应用程序中连接到 MongoDB
- flutter - Flutter String, dynamic'不是类型的子类型
- mongodb - 如何取消设置嵌套对象数组中的值?MongoDB
- c# - 从 .url 快捷方式文件中获取快捷方式链接
- java - 将 Select 语句限制为持续 10 天
- html - res.sendFile 不呈现 html
- python - Python/Plotly:如何使用要显示的信息自定义悬停模板?
- vim - 如何检测是否安装了电力线?
- angular - 在异步管道中设置变量名
- flutter - Flutter 移除 Navigator.push 上的底部导航栏