-3

これが機能しない理由を誰でも知っています:

$no = $_GET['no'];
$findinterval = mysql_query("SELECT * FROM intervals ORDER BY id DESC LIMIT 1");
$result = mysql_fetch_array($findinterval);
$id = $result['id'];
$ip = $_SERVER['REMOTE_ADDR'];

$create_log = mysql_query("INSERT INTO visitors VALUES ('','$ip','$date','$no','$id')");

上記は挿入時に正常に機能します。

$uniquecheck = mysql_query("SELECT * FROM visitors WHERE no = '$no' AND interval = '$id' AND ip = '$ip'");`

var_dump与えてbool(false)います。

受け入れられた回答が検証するように、質問はまったく曖昧ではありませんでした。それでも-4です。

4

1 に答える 1

2

intervalはmysqlで予約語であるため、バッククォートに入れる必要があります。

SELECT * FROM visitors WHERE no = '$no' AND `interval` = '$id' AND ip = '$ip'

それとは別に、mysql_*関数は非推奨であり、PDO / mysqliに移動し、現在のSQLインジェクションホールを閉じるためのステートメントを準備する必要があります。

于 2012-12-15T01:34:21.110 に答える