1
//$type has value of "Hello+World"
$type = $_POST['series'];

$sql = "select max(id) from TABLE_NAME where type = " . $type;

$result = sybase_query ($sql, $db_ro_conn) or die(db_error("query failed $sql"));
$row = sybase_fetch_row($result)

$sql 行に "=". y15, procedure N/A の近くに不正な構文がありますというエラーが表示されます。

これが起こっている理由は何ですか?どういうわけかうまくいきません。助けていただければ幸いです、ありがとう!

4

3 に答える 3

1

次のように $type を引用符で囲みます。

$type = $_POST['series'];

$sql = "select max(id) from TABLE_NAME where type = '" . $type. "'";

$result = sybase_query ($sql, $db_ro_conn) or die(db_error("query failed $sql"));
$row = sybase_fetch_row($result)
于 2012-06-01T11:29:45.180 に答える
0

これで始めましょう。クエリでは、常に POST/GET 値をエスケープしてください。

このエラーは、おそらく $type が文字列であり、引用符で囲まれていないことが原因です。$sql を次のように変更してみてください

$sql = "select max(id) from TABLE_NAME where type = '" . $type."'";
于 2012-06-01T11:30:08.087 に答える
0

あなたは値を引用していません:

$type = str_replace("'", "''", $_POST['series']);
$sql = "select max(id) from TABLE_NAME where type = '" . $type . "'";
于 2012-06-01T11:30:57.590 に答える