У меня есть сценарий оценки, который регистрирует IP-адреса пользователей, поэтому они не могут оценивать файл более одного раза. Однако каждый раз, когда я оцениваю файл для его проверки, мой ip ip изменяется с помощью функции ip2long (). Что происходит? Вот мой код:
<?php require('connect.php'); $sheetID = $_GET["id"]; $rating = $_GET["rating"]; $ip= $_SERVER['REMOTE_ADDR']; $ip = ip2long($ip); $checkIPQuery = mysql_query("SELECT * FROM ratings WHERE sheetID = '$sheetID' and INET_NTOA(ip) = '$ip'"); $doesIPExist = mysql_num_rows($checkIPQuery); if ($doesIPExist == 0) { mysql_query("INSERT INTO ratings (sheetID, rating, ip) VALUES ($sheetID, $rating, $ip)"); echo " $ip <script>setTimeout(function(){location.href = '../sheets.php?id=$sheetID'},1);</script>"; } else echo 'You have already rated this image!'; ?>
И затем для проверки, имеет ли пользователь рейтинг сценария:
$id = $_GET['id']; $ip=$_SERVER['REMOTE_ADDR']; $ip = ip2long($ip); $checkIPQuery = mysql_query("SELECT * FROM ratings WHERE sheetID = '$id' and INET_NTOA(ip) = '$ip'"); $doesIPExist = mysql_num_rows($checkIPQuery);
Вот что я сделал:
Любая помощь будет оценена по достоинству. Благодаря!
Изменить: эти скрипты работают нормально, если я, например, устанавливаю $ ip на 3.