[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Помогите с названием процедуры
voevodin74
Здравствуйте. Задумка - создать мини - вариант валидации для небольшого портала. Т.е. на эл. почту будет отсылаться ссылка и по нажатию происходить замена moder на 2. Вот так выглядит код:

session_start();
$id = intval($_SESSION['email']);
if($_GET['do']=='approve'&&$id>0) {
$query = "UPDATE user SET moder=2 WHERE email=$id";
$result = mysql_query ($query) or die(mysql_error());
}

Чтобы хоть немного "закрыться" от попыток взлома было решено осуществлять вывод с помощью шифрования md5. Т.е. вот так вот в идеале должна выглядить ссылка:
valid.php?do=approve&id=a457953499d1598d37c79f9c48ba...
Пожалуйста помогите разобраться. Сейчас ссылка работает, как по md5 хэшу, так и по нормальному значению. А надо сделать так, чтобы только по md5. Возможно проблема в функции intval,но долгие поиски никак не помогли. Заранее спасибо




Спустя 1 час, 11 минут, 6 секунд (30.10.2010 - 11:32) Xpund написал(а):
$id = md5($id);


Вот ещё замени строку так.
$query = "UPDATE `user` SET `moder`=2 WHERE `email`='".(int)$id";

Спустя 2 часа, 44 минуты, 29 секунд (30.10.2010 - 14:16) Guest написал(а):
лучше так


$query = "UPDATE `user` SET `moder`=2 WHERE `email`=".(int) ;



Спустя 30 секунд (30.10.2010 - 14:17) Guest написал(а):
$query = "UPDATE `user` SET `moder`=2 WHERE `email`=".(int)id ;

Спустя 4 минуты, 40 секунд (30.10.2010 - 14:21) aH6y написал(а):
Guest
Да так лучше.

Спустя 59 минут, 6 секунд (30.10.2010 - 15:21) Guest написал(а):
Странно, довел код до следующего состояние,но он так и остается не работоспособным:(

session_start();
$id = md5($id);
if($_GET['do']=='approve'&&$id>0) {
$query = "UPDATE user SET moder=2 WHERE email=".(int)$id;
$result = mysql_query ($query) or die(mysql_error());
}


При вводе ссылки типа valid.php?do=approve&id=md5хэшмыла moder так и не заменяется на 2( Подскажите пожалуйста

Спустя 2 минуты, 43 секунды (30.10.2010 - 15:23) inpost написал(а):
Это весь код страницы? Приходит на страницу $_GET['id'], а ты обращаешься к $id, это разные переменные!!!

Спустя 4 часа, 51 минута, 30 секунд (30.10.2010 - 20:15) Xpund написал(а):
Какойто бред получаеться:
EMAIL = md5($id) - это как так?
Он тебе будет 100% выдавать ошибку.
Тебе видимо другой апдейт в виде md5 надо делать!
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.