You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

数据库连接成功但网页无数据显示,phpMyAdmin查询正常,请求排查问题

问题排查与解决方案

嘿,我一眼就瞅到了你代码里的关键问题,这几乎肯定就是网页显示“No Data”的原因!

核心问题:变量名拼写错误

你执行查询后把结果赋值给了变量$result,但在判断结果行数的时候却写成了$results->num_rows——多了一个s!

在PHP里,未定义的变量会被视为null,尝试访问null->num_rows会触发隐性错误(如果你的错误提示没开启的话,这个错误不会显示出来),导致条件$results->num_rows > 0不成立,程序直接跳转到else分支输出“No Data”。

修正后的代码片段

<?php 
$query = "SELECT * FROM posts";
$result = $conn->query($query);

// 强烈建议加上查询错误判断,帮你快速定位隐性问题
if (!$result) {
    die("查询执行失败: " . $conn->error);
}

if($result->num_rows > 0){ // 这里把$results改成$result
    while($row = $result->fetch_assoc()){
        echo $row['title'];
    }
    echo"We Have Data";
} else {
    echo"No Data";
}
?>

额外排查建议(以防万一)

如果修正变量名后还是有问题,可以试试这些方法:

  • 开启PHP错误提示:在代码最开头加上这两行,能让所有错误直接显示在页面上,方便快速定位问题:
    error_reporting(E_ALL);
    ini_set('display_errors', 1);
    
  • 确认数据库连接正确性:虽然你说phpMyAdmin能查到数据,但可以加一行代码确认是否连接到了目标数据库:
    echo $conn->select_db($dbname) ? "已连接到正确数据库" : "数据库选择失败";
    
  • 检查表名大小写:在Linux环境下MySQL的表名是区分大小写的,确保代码里的posts和数据库里的表名完全一致(包括大小写)。

内容的提问来源于stack exchange,提问作者Andy Terry

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 03:57:06