-1

重複の可能性:
MySQL - 単一引用符、二重引用符、およびバッククォートをいつ使用するか?

私はこのコードを持っていますが、正しく動作しません。

require_once("../Packages/Connection.php");

        $text = mysql_real_escape_string($_POST["articleText"]);

        $method = $_POST['method'];
        $articleId = $_POST['articleId'];

        if($method == "update")
        {
            mysql_query("UPDATE Articles SET 'text'='".$text."' WHERE 'id'='".$articleId."'") or die(mysql_error());
        }

それは私をとても悩ませています、これは私が得るエラーです-SQL構文にエラーがあります。MySQL サーバーのバージョンに対応するマニュアルで、1 行目の ''text'='tester2' WHERE 'id'='29'' 付近で使用する正しい構文を確認してください...

少し早いですがお礼を

4

5 に答える 5

1

SQLに「テキスト」があるのはなぜですか...

そのままのテキストである必要があり、それだけです:(IDについても同じこと)

mysql_query("UPDATE Articles SET text = '".$text."' WHERE id='".$articleId."'") or die(mysql_error());

「'」を混同している可能性があるのは、文字をエスケープし、予約済みのキーワードに適したバッククォートまたは「`」です...

于 2012-10-10T20:24:56.567 に答える
0
 mysql_query("UPDATE Articles SET text='".$text."' WHERE id='".$articleId."'") or die(mysql_error());
于 2012-10-10T20:24:11.230 に答える
0

最初にクエリを作成してから実行します。

$sql = "UPDATE Articles SET 'text'='".$text."' WHERE 'id'='".$articleId."'";
$r = mysql_query($sql);
if (!$r) {
    echo "Query: ", $sql, "\n";
    echo "Error: ", mysql_error();
    die();
}

これにより、データベースに送信した内容を正確に確認できるため、エラー メッセージで示唆された構文を実際に確認できます。

于 2012-10-10T21:04:26.897 に答える
0

試す

   mysql_query("UPDATE Articles SET `text`='".$text."' WHERE `id`='".$articleId."'")
于 2012-10-10T20:31:42.867 に答える
-2

あなたはこれを使うべきです

mysql_query("UPDATE Articles SET text ={$text} WHERE id ={$articleId}") or die(mysql_error ());
于 2012-10-10T20:26:29.670 に答える