4

プライベート チャットをプログラミングしてい
ますが、次の問題が発生します。SQL 構文にエラーがあります。使用する MySQL サーバーのバージョンに対応するマニュアルを参照して、1 行目で「to='gskartwii' OR sender='gskartwii' AND to='gs'' の近くで使用する正しい構文を確認してください
。 、38行目の C:\xampp\htdocs\rivase\private.php で指定されたブール値
これは私のコードです:

<!-- language: php -->
<?php
$result=mysql_query("SELECT * FROM rivase_chat_posts WHERE sender='$user' AND to='$user2' OR sender='$user2' AND to='$user'");
echo mysql_error();
while ($row = mysql_fetch_assoc($result)) {
    $sender=$row['sender'];
    $content=$row['content'];
    $time=$row['time'];
    echo "$sender : $content <span class='hidden'>$time</span><br />\n";
}
?>

迅速かつ適切な回答をありがとうございました。

4

2 に答える 2

10

toバッククォートでエスケープしてみてください

$result=mysql_query("SELECT * FROM rivase_chat_posts 
                    WHERE sender='$user' AND `to`='$user2' 
                    OR sender='$user2' AND `to`='$user'");

MySQLの予約語なので

于 2012-08-29T12:34:34.173 に答える
1

TO は予約語です。

$result=mysql_query("SELECT * FROM rivase_chat_posts WHERE sender='$user' AND `to`='$user2' OR sender='$user2' AND `to`='$user'");

動作するはずです。

于 2012-08-29T12:35:13.143 に答える