2011-11-16 71 views
0

Possible Duplicate:
PHP Error: mysql_fetch_array() expects parameter 1 to be resource, boolean given奇怪的PHP和MySQL错误没有数据库中选择/ mysql_num_rows()预计参数1是资源,布尔在

给出

大家好和良好的一天,所有

我今天早上有一个很奇怪的错误和iv一直试图在过去的4个小时内解决它,但没有成功。

执行下面的代码后,我得到这个错误:

mysql_num_rows() expects parameter 1 to be resource, boolean given in

$per_page = 4; 
    require_once('Connections/webiceberg.php'); 
    $sql = "select * from services" ; 
    $rsd = mysql_query($sql); 
    $count = mysql_num_rows($rsd); 
    $pages = ceil($count/$per_page); 

但后来当我编辑这行代码给我一个错误我没有得到任何数据库中选择。

$count = mysql_num_rows($rsd) or die (mysql_error());

怎么了,我怎么能解决这个问题,为什么会出现这种情况,它喜欢它无法连接到数据库,甚至在同一个表就好了另一页IAM查看记录时。 任何帮助将不胜感激。

+0

可以包括'联系的内容\ webiceberg.php' **删除密码细节** – ManseUK

+0

有你选择使用DB:mysql_select_db? – Flukey

回答

1

我认为这是不正确的使用mysql_query

它需要指定到数据库 - 所以它应该是这样的:

$database = mysql_connect($host, $user, $password); 
$rsd = mysql_query($sql, $database); 

正因为如此,$rsdfalse当您运行mysql_num_rows(),因此对布尔警告。

希望这有助于

编辑:使用率不techincally不正确,因为link_identifier参数是可选的,但是详见这里:http://php.net/manual/en/function.mysql-query.php,如果不指定数据库连接,它会尝试猜和/或者自己连接可能不起作用,因此会出现错误。

+0

我加了这个代码---> mysql_select_db($ database_webiceberg,$ webiceberg);它的工作原理,感谢您的灵感和帮助大家 唯一奇怪的是,我不明白的是,昨天它没有这行代码工作,今天我浪费了4个小时找出错误 奇怪.... .... – Gunnit

+0

也许你的连接文件改变了?大声笑应该发现,我自己,它绊了我几次:) – jammypeach

2

错误是因为mysql_query返回false - 意味着查询出了问题。

您可能没有在选择查询之前执行use db语句。

+0

是的,我做到了,我没有选择数据库,但我的连接是好的,所以我不明白 – Gunnit

+1

你可以发布'连接\ webiceberg.php'的内容吗? –

+0

同意Jan S - 显然删除你的密码等,只是代码;) – jammypeach

0

您需要选择数据库。 我想你错过了mysql_select_db函数。 下面应该隔离错误。

$conn_id = mysql_connect($host, $username, $password); 
    if(!$conn_id) { 
     die('Cannot connect to DB'); 
    } 

    $db = mysql_select_database($database); 

    if(!$db){ 
     die('Cannot select the database'); 
    } 

    $sql = "SELECT * from services"; 
    $result = mysql_query($sql) or die(mysql_error()); 
相关问题