2014-06-08 96 views
-1

PHP的新品牌,我目前正在浏览一些教程。我创建了一个具有我的主机名,数据库,用户名和密码的login.php文件。我的test1.php页面需要此login.php文件,然后尝试连接到它。PHP MySQL无法从查询中获取行

然后我选择一个数据库,尝试查询并存储结果。以下是我迄今为止:

<?php // test1.php 
    require_once 'login.php'; 
    $db_server = mysqli_connect($db_hostname, $db_username, $db_password); 

    if (!$db_server) die("Unable to connect to MySQL: " . mysql_error()); 

    mysqli_select_db($db_server, $db_database) 
     or die("Unable to select database: " . mysql_error()); 

    $query = "SELECT * FROM classics"; 
    $result = mysqli_query($db_server, $query); 

    if (!$result) die ("Database access failed: " . mysql_error()); 

    $rows = mysql_num_rows($result); 
?> 

,我得到的错误说:

mysql_num_rows() expects parameter 1 to be resource, object given on line 15 

线15:

$rows = mysql_num_rows($result); 

到底是什么,我找资源进入mysql_num_rows()

+2

使用了'mysqli',所以你应该使用'mysqli_num_rows()' –

+1

你混合'mysql_ *'和'mysqli_ *'函数调用!将'mysql_num_rows'改为'mysqli_num_rows'。 – peterm

+0

啊,谢谢。该示例中的很多代码已被弃用,所以我一直在尝试修复这些错误。猜猜我忘了一个! – raphnguyen

回答

1

mysql_num_rows() expects parameter 1 to be resource发生在您的语句错误时,可能表示classics表不存在。

而且还使用的mysqli代替mysql