[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: нужна консультация по капче
CaypoH
гуглил, качал оупенсорсовые капчи, читал маны. но везде лишь краем касаются интересного мне вопроса.

скрипт генерации капчи всегда начинается с session_start(). почему, в чём преимущество такого метода?
далее, я понял что генерировать картинку скриптом нужно в отдельном файле, а потом включать её в код страницы с проверкой кодом <img src="путь/до/файла.php">
тут, однако, часто встречал такое: <img src="путь/до/файла.php?<?php echo session_name()?>=<?php echo session_id()?>">.
для чего это делается? откуда берутся данные sessin_name и session_id?

далее, проверка, как я часто видел, в основном выполняется следующим кодом:
if($_POST['go']){ // go по имени кнопки отправки формы
if(isset($_SESSION['captcha_keystring']) && $_SESSION['captcha_keystring'] == $_POST['keystring']){
/* а вот тут непонятно. откуда берутся captcha_keystring, и keystring? */
echo "Правильно";
}else{
echo "Ошибка - неправильный ввод числа";
}
}

unset($_SESSION['captcha_keystring']);

ну и последнее. данные с картинки хранятся у меня в переменной, предположим $check_code. они в файле генерации капчи, который подключается в сам файл содержащий форму проверки вышеуказанным методом src. однако как мне передать туда переменную для сверки с введёнными пользователем данными? они передаются через сессию? если так, то в файле проверки (назавём его index.php) тоже нужно начинать сессию? если да, то с какими параметрами.

буду благодарен за любую помощь и подсказки. не люблю когда что-то делается методом, который я недопонимаю, хочу разобраться.



Спустя 13 часов, 21 минута, 28 секунд (12.11.2009 - 05:06) CaypoH написал(а):
О_о ап

Спустя 22 минуты (12.11.2009 - 05:28) brainraider написал(а):
Афтару +1 за любознательность =))))

Хотите разобраться в капче? Начните с простого:

Самый простой урок по капче, который видел

Быстрый ответ:

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