2011-11-10 106 views
0

我正在構建一個網站,並且已經在生產服務器上測試了這條sql語句,並且它工作正常,沒有錯誤並返回正確的結果。但是當我通過php執行它時,它告訴我我有一個錯誤。PHP腳本在腳本中失敗,但在生產服務器上運行

$query = "SET SESSION TRANSACTION ISOLATION LEVEL READ UNCOMMITTED; 
    select r.id, r.name from recipes r inner join fav5 f on r.id=f.recipeid where f.memberid='$id'"; 

這是一個PHP腳本時出現錯誤:

您的SQL語法錯誤;檢查對應於你的MySQL服務器版本的手冊,選擇正確的語法來使用附近的'select r.id,r.name from recipes r inner join fav5 f on r.id = f.recipeid where f'。在線2

這是怎麼回事!

回答

2

不能使用分隔符(;)在SQL從PHP

這是一個安全問題,在一次一行。

+0

我想我不能接受根據堆棧溢出8分鐘的答案,但我只是試了一下,它的工作!你是最棒的!!!!我會接受它作爲一個答案,當它讓我:) – Nathan

0

我假設您使用mysql_query()來執行SQL。如果是這樣的話,那個函數不支持多重查詢。您需要使用mysqli_multi_query()

+2

僅供參考,許多服務器沒有安裝php的mysqli擴展。如果你無法工作,那可能是問題所在。 – polyhedron

相關問題