これはただのクレイジーです。何も問題はないようです:
$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 でクエリを実行したところ、うまくいきました。
これがエコーされた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)