2012-11-05 52 views
0

我在我的PHP & mysql代碼中有一個選擇框。最好的方法來過濾Mysql中的值-PHP

<select id="addressbook_user" name ="addressbook_user"> 
<option value="hi">hi</option> 
<option value="hello">hello</option> 
<option value="newa">newa</option> 

<select> 

我存儲一個jQuery列表中的所選值和我傳遞該列表到PHP代碼以過濾除了像列表項的其它選項。

$list = $_GET['list']; 

print $list; 
print_r($list); 
$query = "SELECT * from demo_addressbook WHERE user_created_id IN(SELECT id FROM demo_user WHERE user_name = '$get_user_name') AND type = 1 AND guest_name NOT IN '$list' ";        
$sresult = mysql_query($query) or die (mysql_error()); 

並基於結果我試圖創建沒有選定列表的值的最新選擇框。

,但不幸的是我上面的查詢工作不

hiYou have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'hi' at line 1 is the error . 

請建議我從MySQL表

回答

0

篩選陣列中的數據與parenthesis

NOT IN ('$list') 
+0

爲第二個第一濾波工作正常,又把它顯示所有數據 – user1667633

+0

但是,這是一個字符串 – user1667633

0

住變量的最佳方式請在下面更改sql,找不到變量的bacause值,並在 語句中需要lile「columnName(('','')」):

$query = "SELECT * from demo_addressbook WHERE 
user_created_id IN(SELECT id FROM demo_user 
WHERE user_name = '" . $get_user_name . "') 
AND (type = 1) AND guest_name NOT IN(". $list .") ";   
+0

呀妳權 – user1667633

相關問題