|
|
|
| Зачем механизм сессий нужен на форуме, ладно там в интернет-магазине | |
|
|
|
|
|
|
|
для: Schumacher
(22.05.2005 в 19:55)
| | Также как и винтернет магазине ;) Как вести пользоватля от страницы к странице? | |
|
|
|
|
|
|
|
для: Sin
(22.05.2005 в 20:06)
| | И что это даёт? | |
|
|
|
|
|
|
|
для: Schumacher
(22.05.2005 в 20:10)
| | >И что это даёт?
Тут уж кто как придумает.
Например, защиту от спама. | |
|
|
|
|
|
|
|
для: glsv (Дизайнер)
(22.05.2005 в 23:01)
| | Дизайнер, а чё такое спам? (я совсем недавно стал изучать PHP и поэтому такие глупые звучат вопросы) | |
|
|
|
|
|
|
|
для: Schumacher
(22.05.2005 в 23:51)
| | Я, в данном случае, имел ввиду что с помощью сессий можно предотвратить автоматическое создание множества новых тем с помощью скрипта.
Если почтовый спам - это множество ненужных рекламных (и не только) писем, то здесь по аналогии - множество ненужных тем. | |
|
|
|
|
|
|
|
для: glsv (Дизайнер)
(22.05.2005 в 23:58)
| | А как автоматически создать новую тему с помощью скрипта? | |
|
|
|
|
|
|
|
для: Schumacher
(23.05.2005 в 00:15)
| | Анализируется форма отправки сообщения, вычисляется обработчик и принимаемые им параметры - в скрипте эмулируется отправка этих параметров обработчику. Обычно для этого применяются сокеты. | |
|
|
|
|
|
|
|
для: cheops
(23.05.2005 в 02:00)
| | Cheops, ну этот-то понятно, вот только причём тут сессии так и не доходит, печально.......... | |
|
|
|
|
|
|
|
для: Schumacher
(23.05.2005 в 17:35)
| | Использование сессий при отправки данных на сайт предотвращает авто-публикование тем или сообщений на форумах, досках объявлений, гостевых книгах и т.д.
Если Вам интересно как работает такой механизм, то скачайте по этой ссылке http://www.softtime.ru/info/gbmysql.php?down=gbmysql.zip, ну например: гостевую книгу, и разберитесь!
А вообще смотрите...
<?PHP
// Открываем сессию
session_start();
// Создаем переменную $sid_add_theme, содержащею номер Вашей сессии
$sid_add_theme = session_id();
//Если обратились к обработчику формы
if (!empty($action))
{
// Проверяем совпадает ли идентификатор сессии с
// переданным в форме - защита а авто-постинга
if($sid_add_theme != $_POST['sid_add_theme'])
{
echo "Ошибка добавления сообщения в гостевую книгу!";
exit;
}
// Если условие выполнилось, то дальше продолжается работа обработчики формы
}
?>
|
| |
|
|
|
|
|
|
|
для: Artemy
(23.05.2005 в 20:23)
| | Здесь эффект построен на том, что уникальный номер сессии помещается в скрытое поле формы, при этом при переходе к обработчику формы номер у посетителя остаётся точно-такой же (его запоминает браузер), если номера переданные через скрытое поле и номер полученный в обработчике при помощи функции session_id() совпадают, то посетитель честно зашёл на сайт, загрузил форму и сейчас попал в обработчик. Если они не совпадают, значит кто-то воссоздал запрос к обработчику, засунул туда номер от балды и пытается программным путём обратиться к обработчику, минуя форму. | |
|
|
|
|
|
|
|
для: cheops
(23.05.2005 в 23:31)
| | Спасибо мужики, cheops и Artemy, теперь понятно. Вот только такой вопрос: а что "опасного" может быть, если не делать эту проверку? Кстати, почему-то на форуме Левина сессий вообще нет. Получается это не необходимость | |
|
|
|
|
|
|
|
для: Schumacher
(25.05.2005 в 00:06)
| | >Вот только такой вопрос: а что "опасного" может быть, если не делать эту проверку?
В принципе, жить можно и без таких проверок. Но в одно прекрасное утро можно проснуться и увидеть в форуме 500 одинаковых тем. Это парализует на некоторое время работу форума, да и для имиджа ничего хорошего. И если это не исправить, то можно стать прекрасным объектом для подобных сетевых издевательств и шантажа. | |
|
|
|
|
|
|
|
для: glsv (Дизайнер)
(25.05.2005 в 04:26)
| | Дизайнер, ну ведь как я понимаю легко можно обойти эту проверку, например, регистрироваться под одним именем и отправить msg, потом под другим именем и отправить это же и так пока не устанешь. Разве не так? | |
|
|
|
|
|
|
|
для: Schumacher
(25.05.2005 в 19:49)
| | Да, но на 50-м сообщении отправляющий устанет и поймёт, что хватит, а если он ещё представит, что модератор удалит все его сообщения при помощи одного единственного SQL-запроса - настроение его будет совсем испорчено :))) | |
|
|
|
|
|
|
|
для: Schumacher
(22.05.2005 в 19:55)
| | авторизация на сайтах основанна именно на етих самых сесиях | |
|
|
|