這簡直太瘋狂了。似乎沒有什麼是錯誤的:這個mysql查詢看起來有什麼問題嗎?
$q_messages = $db->query("SELECT `messages`.`MessageID`, `messages`.`MsgDate`, `messages`.`MsgStatus`, " .
"`messages`.`Subject`, `messages`.`Message`, CONCAT(users.LastName, ', ', users.FirstName) SenderName " .
"FROM `messages` " .
"INNER JOIN `users` ON `messages`.`Sender` = `users`.`UserID` " .
"WHERE (`messages`.`Recipient`=$userid)");
以下錯誤將查詢結果被拋出:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '\', \', users.FirstName) SenderName FROM `messages` INNER JOIN `users` ON `messa' at line
我也試着更換「」與\「 \」中的CONCAT功能,但這並沒有解決它。 順便說一句,如果我刪除concat函數的第二個參數,它的工作原理如下:
PS。我在phpmyadmin中運行了查詢,並且它工作正常!
這是echo的sql。對不起,我剛開始並沒有意識到你的意思:D
SELECT `messages`.`MessageID`, `messages`.`MsgDate`, `messages`.`MsgStatus`, `messages`.`Subject`, `messages`.`Message`, CONCAT(users.LastName, ', ', users.FirstName) SenderName FROM `messages` INNER JOIN `users` ON `messages`.`Sender` = `users`.`UserID` WHERE (`messages`.`Recipient`=30)
你可以提供圍繞這個的代碼或者顯示導致錯誤的回顯SQL嗎? – Popnoodles 2013-02-21 14:23:30
在大多數情況下,打印「生成的」SQL將立即向您顯示出現了什麼問題。 – 2013-02-21 14:28:14
'$ userid'是空白的? – 2013-02-21 14:28:49