|
|
|
| Помогите пожалуйста новичку найти ошибку
Код:
# Генерируем случайное число и шифруем его
$hash = md5(generateCode(10));
# Переводим IP в строку
$insip = ", user_ip=INET_ATON('".$_SERVER['REMOTE_ADDR']."')";
# Записываем в БД новый хеш авторизации и IP
mysql_query("UPDATE users SET user_hash='".$hash."' ".$insip." WHERE user_id='".$data['user_id']."'");}
# Ставим куки
setcookie("id", $data['user_id'], time()+60*60*24*30,"/barter/");
setcookie("hash", $hash, time()+60*60*24*30,"/barter/");
# Переадресовываем браузер на страницу проверки нашего скрипта
header("Location: check.php"); exit();
|
После чего мы пытаемся вытащить из базы user_ip как указано в следующем коде:
if (isset($_COOKIE['id']) and isset($_COOKIE['hash']))
{
$query = mysql_query("SELECT user_hash,user_id,INET_NTOA(user_ip) FROM users WHERE user_id = '".intval($_COOKIE['id'])."' LIMIT 1");
$userdata = mysql_fetch_assoc($query);
if(($userdata['user_hash'] !== $_COOKIE['hash']) or ($userdata['user_id'] !== $_COOKIE['id']) and (($userdata['user_ip'] !== $_SERVER['REMOTE_ADDR']) or ($data['user_ip'] == "0")))
{
setcookie("id", "", time() - 3600*24*30*12,"/barter/");
setcookie("hash", "", time() - 3600*24*30*12, "/barter/");
print "Хм, что-то не получилось";
}
else
{
echo "ip".$userdata['user_ip']."!";
}
|
Hе возвращает IP адресс
Где моя ошибка? | |
|
|
|
|
|
|
|
для: Nazar
(01.05.2009 в 20:47)
| | Отсутствует элемент $userdata['user_ip']
Вообще-то ему лучше бы назначить алиас в запросе:
SELECT user_hash,user_id,INET_NTOA(user_ip) AS ui FROM ...
и обращаться как $userdata['ui'] | |
|
|
|
|
|
|
|
для: Trianon
(01.05.2009 в 21:00)
| | Огромное спасибо за вашу помощь! | |
|
|
|