2011-08-08 142 views
1
$bilgi= mysql_query("SELECT age,wname,slid,sex FROM user AND city WHERE user.ci_name=(SELECT ci_id FROM city WHERE ci_name='$ciname')"); 
while($sutun= mysql_fetch_array($bilgi)) 

這是我的查詢語句。這給了我錯誤,並提供錯誤參數是無效的MySQL導致資源在....SQL查詢給出錯誤?

現在讓我解釋我在做什麼。我正在將一些城市名稱發送到我的數據庫,以查找城市的唯一編號。我發送伊斯坦布爾,在我的數據庫中id是2。我有兩張桌子,一個是城市,另一個是用戶。用戶表具有年齡,wname,性別,滑動;以及與city_id爲外鍵的ci_name部分。 city_id是城市表的主鍵。我想找到伊斯坦布爾的年齡,wname,滑動和性別。

任何人都可以幫助我如何得到這個錯誤,並找到我想要的東西:)?

+2

查看http://stackoverflow.com/questions/6198104/reference-what-is-a-perfect-code-sample-using-the-mysql-extension如何調試mySQL查詢 –

回答

4
$bilgi= mysql_query("SELECT age,wname,slid,sex FROM user, city WHERE user.ci_name=(SELECT ci_id FROM city WHERE ci_name='$ciname')"); 
    while($sutun= mysql_fetch_array($bilgi)) 

您在FROM部分有一個AND,這是無效的。

+0

實際上再次尋找 - 我認爲無論如何,你的SQL都是錯誤的,如果你從CITY表中返回任何字段,你只需要'用戶,城市'。 – diagonalbatman

0

您可以使用一個查詢,而不是使用兩個像你這樣的:

$query = 'SELECT age,wname,slid,sex FROM user, city WHERE user.ci_name = city.ci_id AND city.name = '".$yourCityNameYouSeek."''; 

我沒有得到的唯一的事情是表列你的城市名稱存儲。在user - 表你有ci_name(是一個名稱或ID)?

+0

你的例子不會工作 - 你有兩個WHERE子句...我將編輯 – diagonalbatman

+1

呃,錯誤的錯誤......謝謝! :) – scube