2012-12-01 65 views
0

我收到以下錯誤,請幫助搜索多個標準的MySQL

警告:mysql_num_rows()預計參數1是資源,布爾在d給出:\上線16

託管\ 10102937 \ HTML \的search.php

警告:mysql_num_rows()預計參數1是資源,在布爾給出d:\在線託管\ 10102937 \ HTML \的search.php 23

警告:mysql_num_rows()預計參數1是資源,布爾D:\ hosting \ 10102937 \ html \ search.php 25行

這是我的PHP代碼

include("connection.php"); 

$type = $_POST['type']; 
$address = $_POST['address']; 
$bedrooms = $_POST['bedrooms']; 
$min = $_POST['price']; 
$max = $_POST['price']; 
//$sql ="SELECT * FROM subscribers2 WHERE type = '%$type%' AND address = '%$address%' AND bedrooms = '%$bedrooms%' AND min as '%$min%' AND max as '%$max%' "; 


$rs_result = mysql_query ($sql); 
$num_rows = mysql_num_rows($rs_result); 
$query = mysql_query("SELECT * FROM subscribers2 WHERE type = '%$type%' AND address = '%$address%' AND bedrooms = '%$bedrooms%' AND min as '%$price%' AND max as '%$price%' "); 



$rs_result = mysql_query ($sql); 
$num_rows = mysql_num_rows($rs_result); 
$query = mysql_query("SELECT * FROM subscribers2 WHERE type LIKE '%$type%' AND address LIKE '%$address%' AND bedrooms LIKE '%$bedrooms%' AND min as '%$price%' AND max as '%$price%' "); 
$number=mysql_num_rows($query); 
?> 
+1

當您將查詢字符串註釋掉時,它看起來像您的查詢'$ sql'。 –

+1

請注意,此搜索是廣泛開放的SQL注入!使用PDO! – jtheman

+0

@peterpan你說得對,拿走這兩個//你會沒事的。彼得潘你應該添加這個作爲你的答案! – jtheman

回答

0

它看起來像你的查詢$sql當你的查詢字符串註釋掉。

但這只是3個mysql錯誤中的1個。

你會發現錯誤使用mysql_erroras documented here

您還應該考慮SQL注入,您的參數正在通過POST直接傳遞到數據庫級別,這會使服務器的數據庫處於打開狀態。

+0

非常感謝您的回覆,我是PHP和myslq的新手,我摘下了關於$ sql的評論,您可以給我一個更近的示例 – user1869516

+0

您需要告訴我mysql_error首先打印出的內容 –

+0

這就是我執行搜索時得到的警告:mysql_num_rows()期望參數1是資源,在第16行D:\ hosting \ 10102937 \ html \ search.php中給出的布爾 警告:mysql_num_rows()期望參數1在第23行D:\ hosting \ 10102937 \ html \ search.php中給出的布爾值 警告:mysql_num_rows()期望參數1是資源,在D:\ hosting \ 10102937 \ html \ search中給出布爾值。第25行的php – user1869516