Регистрация    Забыли пароль?        Правила форума    FAQ (читать перед созданием новой темы)
Имя   Пароль  запомнить
  
Просмотр темы
Вернуться на сайт: PHP-Fusion SF Russian Support Site

Форум поддержки PHP-Fusion SF | PHP-Fusion SF - Система Управлением Сайта | Народный SF Fusion
# 1 Тема: защита формы от заполнения
netta
Пользователь

Avatar пользователя




новичек

Сообщений: 1
Зарегистрирован: 03 Января 2011, 14:48:10
Сказали спасибо 0 раз
Статус: offline
Опубликовано 03 Января 2011, 15:51:07
Здравствуйте, подскажите как реализовать следующее:
есть форма для записи инфы в базу.
есть обработчик формы.handler.php
необходимо проверить идентификатор сессии в форме и в обработчике, примерно так:
в форме ставим скрытое поле, в нем пишем session_id
<?рпр
// Инициируем сессию
session_start();
?>
<form action=handler.php method=post>
Имя: <input type=text name=name>
Пароль: <iput type=password name=pass>
<input type=submit name=send value=Отправить>
<input type=hidden name=session_id value=<?php echo session_id();?»
</form>
в обработчике- проверяем этот id:
<?php
// Инициируем сессию
session_start();
// Сравниваем переданный идентификатор из формы
//с текущим идентификатором сессии
if($_POST['session_id'] != session_id())
{
exit("Попытка передачи данных с другого хоста. Скрипт остановлен."smiley
}
// Дальнейшая обработка данных...
?>

Вопрос в следующем: где нужно прописать session_start(); для формы???(ведь если я поставлю его просто в начале формы, она не заработает - т.к. сначала выводится основной шаблон сайта, а потом уж отдельные куски внутри)


[Изменил(а) netta, 03 Января 2011, 16:43:10]  
^ наверх ^
Перейти на форум:


94,938,127 уникальных посетителей
сейчас: 19 Апреля 2024, 17:56:25
Генерация страницы: 0.04 сек.