0

サイトを作成していますが、更新ページで問題が発生しています。このページは既存の投稿を更新します。

失敗するコードは次のとおりです。

$result = mysql_query("UPDATE php_blog SET timestamp='$timestamp',
title='$title', entry='$entry', WHERE id='$id' LIMIT 1") or die(mysql_error());

フォームの[更新]ボタンを押すと、次のSQLメッセージが表示されます。

SQL構文にエラーがあります。1行目の「WHEREid='9' LIMIT 1」の近くで使用する正しい構文については、MySQLサーバーのバージョンに対応するマニュアルを確認してください。

しかし、それが何を意味するのか私にはわかりません。その場所を確認しましたが、何も問題が見つかりません...ヘルプ?ありがとう

4

4 に答える 4

2

WHERE ステートメントの前に余分なコンマがあります。SQL は次のようになります。

UPDATE php_blog 
SET timestamp='$timestamp', title='$title', entry='$entry' 
WHERE id='$id' LIMIT 1

mysql_ 関数は非推奨になっていることに注意してください。

http://php.net/manual/en/function.mysql-query.php

于 2013-02-21T18:31:26.193 に答える
1

の前のコンマを削除しますWHERE:

$result = mysql_query("UPDATE php_blog SET timestamp='$timestamp', 
    title='$title',
    entry='$entry' WHERE id='$id' LIMIT 1") 
    or die(mysql_error());
于 2013-02-21T18:32:07.440 に答える
0

WHEREそのような句の前のコンマを削除します

$result = mysql_query("UPDATE php_blog SET timestamp='$timestamp', title='$title',entry='$entry' WHERE id='$id' LIMIT 1") or die(mysql_error());
于 2013-02-21T18:33:16.540 に答える
0

あなたの答えへの質問: の前のコンマを削除しますWHERE

しかし、あなたは幸運にもその問題を抱えていて、ここに投稿してください。あなたのコードは非常に脆弱であり、準備されたステートメントの使用方法を実際に学ぶ必要があります.

問題を理解するために、「SQL インジェクション」もググってください。

于 2013-02-21T18:50:20.643 に答える