Другие языки программирования и технологии

веб мастерам (PHP)

скажите пожалуйста, сейчас на сайтах стала очень популярна "защита от роботов",где нужно ввести код с картинки и т. п. Хочу сам попробовать сделать также, но я еще плохо знаю PHP. Подскажите, как можно это сделать (если есть скрипт, то киньте ссылку) . Я иду по такой схеме, в форме регистрации вставляю изображение (только вместо самого GIF, JPG и др. , ставлю PHP файл. ) В этом PHP пишу мол переменной "а" присвоить случайное число, а потом если "а" = 1, то выводить одно изображение, если 2, то другое и т. д. Это все я сообразил, только как мне из этого php изображения скинуть правильный ответ, который указан на картинке???? Заранее спасибо! (если можно, то по подробнее)
Каптча это называется. Есть масса готовых решений. Люди, тут вообще кто-нить знает, что такое поисковик?? ?
http://www.captcha.ru/kcaptcha/
На сайте все разжевано.
Максим Максимов
Максим Максимов
1 406
Лучший ответ
ну вот. ты от пользователя получаешь строку-результат того, че он там высмотрел в твоей картинке. когда твоя картинка составляется, предложу так: abc - строковый массив, содержащий все буквы и цифры, которые будут использоваться в твоей картинке. а- переменная целого типа, диапазо - от 0 до количества элементов в массиве abc. понял? a будет содержать индекс элемента этого массива.
пишем цикл с количесвом итераций таким, сколько символов будет выведено на твоей картинке.
например
for(i=0;i<6;i++) // будет у тебя 6 символов
{
a=случайное число из выше определенного диапазона;
pravilnaya_stroka=pravilnaya_stroka+abc[a] ;
// понял? накапливаем в переменной pravilnaya_stroka элементы из массива abc, которые определяются по случайному индексу a
в этом же цикле строим картинку, так, как ты и строил
}
потом где получили от пользователя введенную строку, мы просто производим ее сравнение со строкой pravilnaya_stroka, которую мы получили в цикле построения этой нашей картинки. для сравнения используем встроенную функцию - ихъ строковых там в пхп просто куча. вроде так. я бы сделала что-то типа этого.

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

сорри, не оптимизированно, но идея есть. . а там уж сам суди. могу со скриптом помочь, денвер только дома седня поставлю...
что то ты намудрил
есть такая функция как include('') ;
я бы так сделал несколько картинок к примеру три четыре варианта условие if и в зависимости от того чему ровна переменная выводит ту или иную картинку к примеру include('1.php');
где 1 php содержит следующее img src="1.gif" / (знаки тега опустил)
ну сделай три четыре файлика три четыре картинки это если принципиально самому делать но есть другие скрипты готовые погугли вариантов полно есть вроде 1+2 = ...просто и элементарно и только программно и картинок не надо никаких
Либо через кеш в БД, либо через сессии. Второе, естесственно, и удобней, и предпочтительней.