繁体   English   中英

使用 php*fixed* 查询数据库时遇到问题

[英]Trouble querying database with php*fixed*

我无法从数据库中选择我的数据并显示它。 我看过教程,但仍然遇到相同的错误。 一些帮助将不胜感激。 我得到的错误是无法获取结果。

$sql = "SELECT * FROM data";
$result = mysql_query($sql) or die("couldnt fetch result");
if($result > 0){
while ($rows = mysql_fetch_array($result)){
$username = $rows['username'];
echo $username;
    }
}

就这样做(假设它正确连接到数据库,首先要检查!)

$sql = "SELECT * FROM `data`"; // data is a reserved keyword, protect it !!!
$result = mysql_query($sql) or die("couldnt fetch result"); // potentially diying here
if($result){
     while ($row = mysql_fetch_assoc($result)){
          $username = $row['username'];
          echo $username;
    }
}

我认为非常简单的问题是你检查$result是否大于 0。但是你得到了一个资源。

$conn = mysql_connect.......

$sql = "SELECT * FROM data";
$result = mysql_query($sql) or die("couldnt fetch result");
if($result){
    while ($rows = mysql_fetch_array($result)){
        $username = $rows['username'];
        echo $username;
    }
}

如果您看到 die 语句,那么您的 SQL 语法就会出错。 它很短,但您尝试连接的数据库中可能不存在您的表。 我希望你之前有一个连接,它不是你的完整代码。

您使用旧的 mysql 函数。 最好使用 MySQLi 或 PDO。

并且DATA是一个保留关键字,如果您在查询中使用它,您可能会遇到问题。 例如,在prefix_data重命名您的表。

https://dev.mysql.com/doc/refman/5.7/en/keywords.html

如果您得到的是字面上的“无法获取结果”,则意味着您的mysql_query()失败,并且die语句接管了。 检查您的数据库连接。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM