连接MySQL数据库错误

时间:2015-04-16 12:20:28

标签: php mysql sql

您好我正在尝试从Mysql服务器加载数据库并继续收到此错误mysqli_num_rows()希望参数1为mysqli_result,在C:\ Users \ Mirne \ Desktop \ Server \ root \ funkcie中给出布尔值。第15行的PHP。我查了很多帖子,但我没有看到发现我的错误。 Ty寻求帮助

<?php
global $X,$Y,$height,$weight,$key,$type,$text,$position;

function load() {
$servername = "localhost";
$username = "root";
$password = "xxxx";
$dbname = "web builder";
$link = mysqli_connect($servername, $username, $password, $dbname); 
if (!$link) {
die("Connection failed: " . mysqli_connect_error());
  }
    $sql = "SELECT x, y, height, weight, key , type , text , position FROM suradnice";
$result = mysqli_query($link, $sql);
if (mysqli_num_rows($result) > 0) { ////////line15///////
        while($row = mysqli_fetch_assoc($result)) {             
        $X=$row["x"] ;
    $Y=$row["y"] ;
    $height=$row["height"] ;
    $weight=$row["weight"];
    $key=$row["key"];
    $type=$row["type"] ;
    $text=$row["text"] ;
    $position=$row["position"]  ;
        }  
    } else {
        echo "error";
    }   
    mysqli_close($link);
}

?>

2 个答案:

答案 0 :(得分:10)

您的查询不应该有效且失败。您使用的是保留字key 这需要包含在查询中的反引号`中:

SELECT x, y, height, weight, `key`, type

List of MySQL reserved words

答案 1 :(得分:3)

虽然Abhik绝对正确,但我还建议您使用以下内容向SQL添加错误捕获:

$result = mysqli_query($link, $sql) or die("line ".__LINE__.":".mysqli_error($link));

这将为您提供清晰的输出,以帮助您了解出现了什么问题以及原因。

(不适用于生产环境,或者用于生产而不是die语句将错误写入PHP错误日志文件。)