0

次のようなクエリでエラーが発生しますが、問題がわかりません。

$str = "rob's";
...
$query ="INSERT INTO tableName (name) VALUES (mysql_real_escape_string('$str')";

編集:

謝罪します。コードを縮小する際にミスを犯しました。これは私が持っているエラーに近いものです:

$str = "rob's";
...
$query ="INSERT INTO tableName (name) VALUES (('".mysql_real_escape_string($str)."')";
4

4 に答える 4

4

mysql_real_escape_string()MySQLではなくPHPです。引用符からそれを取得する必要があります

$query ="INSERT INTO tableName (name) VALUES ('".mysql_real_escape_string($str)."')";

また、$str は文字列なので、MySQL では qouts で囲む必要があるので追加しました。これは既に配置されていますが、関数が引用符から抜け出す必要があるため、それらを移動する必要がありました

于 2012-04-17T20:03:42.627 に答える
1
$query ="INSERT INTO tableName (name) VALUES ('" . mysql_real_escape_string($str) . "'";
于 2012-04-17T20:04:09.913 に答える
1

mysql_real_escape_string()PHP関数です。したがって、MySQL クエリ文字列では、変数のように渡す必要があります。

$query ="INSERT INTO tableName (name) VALUES ('" . mysql_real_escape_string($str) . "')";

詳細はこちら: http://php.net/manual/en/function.mysql-real-escape-string.php

于 2012-04-17T20:05:13.270 に答える