【发布时间】:2012-11-08 21:31:23
【问题描述】:
可能重复:
PHP (MySQL) error : “Warning: mysql_num_rows() expects parameter 1 to be resource”
我试图让这个 AJAX 函数的 php 页面工作。
这是我尝试运行时的错误消息:
Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in /home/ftpbpan/public_html/ThornAJAX/info.php on line 10
第 10 行是:
**$num_rows = mysql_num_rows($query);**
<?php
$connect = mysql_connect("localhost","****","******") or die("didnot connect to database");
mysql_select_db("people");
if(strlen($_GET['user']) >0){
$name = $_GET['user'];
$query = mysql_query("select * from info where name='$name' limit 1");
$num_rows = mysql_num_rows($query);
if($num_rows == 1) {
$row = mysql_fetch_assoc($query);
【问题讨论】:
-
您检查过右侧的任何链接吗?
-
mysql_query 在成功时返回结果,在错误时返回 false。我会说你的查询有错误。
mysql_库也已弃用。 -
请不要使用
mysql_*函数编写新代码。它们不再维护,社区已经开始deprecation process。看到 red box 了吗?相反,您应该了解prepared statements 并使用PDO 或MySQLi。如果你不能决定哪一个,this article 会帮助你。如果你选择 PDO,here is good tutorial。 -
-1。错误消息之前应该有另一个错误,例如可怕的you have an error in your query。发布那个错误。
-
在您的查询行中输入
or die(mysql_error())以准确了解为什么它会向 $query 返回布尔值 false。然后去阅读sql injection attacks,如果你不修补漏洞,你的服务器就会被摧毁。