Другие языки программирования и технологии
веб мастерам (PHP)
скажите пожалуйста, сейчас на сайтах стала очень популярна "защита от роботов",где нужно ввести код с картинки и т. п. Хочу сам попробовать сделать также, но я еще плохо знаю PHP. Подскажите, как можно это сделать (если есть скрипт, то киньте ссылку) . Я иду по такой схеме, в форме регистрации вставляю изображение (только вместо самого GIF, JPG и др. , ставлю PHP файл. ) В этом PHP пишу мол переменной "а" присвоить случайное число, а потом если "а" = 1, то выводить одно изображение, если 2, то другое и т. д. Это все я сообразил, только как мне из этого php изображения скинуть правильный ответ, который указан на картинке???? Заранее спасибо! (если можно, то по подробнее)
Каптча это называется. Есть масса готовых решений. Люди, тут вообще кто-нить знает, что такое поисковик?? ?
http://www.captcha.ru/kcaptcha/
На сайте все разжевано.
http://www.captcha.ru/kcaptcha/
На сайте все разжевано.
ну вот. ты от пользователя получаешь строку-результат того, че он там высмотрел в твоей картинке. когда твоя картинка составляется, предложу так: abc - строковый массив, содержащий все буквы и цифры, которые будут использоваться в твоей картинке. а- переменная целого типа, диапазо - от 0 до количества элементов в массиве abc. понял? a будет содержать индекс элемента этого массива.
пишем цикл с количесвом итераций таким, сколько символов будет выведено на твоей картинке.
например
for(i=0;i<6;i++) // будет у тебя 6 символов
{
a=случайное число из выше определенного диапазона;
pravilnaya_stroka=pravilnaya_stroka+abc[a] ;
// понял? накапливаем в переменной pravilnaya_stroka элементы из массива abc, которые определяются по случайному индексу a
в этом же цикле строим картинку, так, как ты и строил
}
потом где получили от пользователя введенную строку, мы просто производим ее сравнение со строкой pravilnaya_stroka, которую мы получили в цикле построения этой нашей картинки. для сравнения используем встроенную функцию - ихъ строковых там в пхп просто куча. вроде так. я бы сделала что-то типа этого.
а забыла. чтобы картинки не повторялись, надо завести какую-нибудь базу данных или на крайняк файлик, и проверять, чтобы не было совпадений строки, а иначе повторить цикл сначала.
сорри, не оптимизированно, но идея есть. . а там уж сам суди. могу со скриптом помочь, денвер только дома седня поставлю...
пишем цикл с количесвом итераций таким, сколько символов будет выведено на твоей картинке.
например
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 = ...просто и элементарно и только программно и картинок не надо никаких
есть такая функция как include('') ;
я бы так сделал несколько картинок к примеру три четыре варианта условие if и в зависимости от того чему ровна переменная выводит ту или иную картинку к примеру include('1.php');
где 1 php содержит следующее img src="1.gif" / (знаки тега опустил)
ну сделай три четыре файлика три четыре картинки это если принципиально самому делать но есть другие скрипты готовые погугли вариантов полно есть вроде 1+2 = ...просто и элементарно и только программно и картинок не надо никаких
Либо через кеш в БД, либо через сессии. Второе, естесственно, и удобней, и предпочтительней.
Похожие вопросы
- вопрос веб мастерам
- Современные Веб-мастера! Пожалуйста дайте советы начинающему!
- Вопрос ВЕБ-мастерам и всем кто разбирается в сайтостроительстве: (см.внутри)
- ВЕБ мастерам.Что такое трафик в 10гиг? Это много? И что вообще такое трафик на бесплатном хостинге?
- Вопрос веб-мастерам ;)
- Для веб-мастеров. Кто знает, как сделать так, чтобы текст на сайте (своём) нельзя было копировать никем?
- Сколько веб мастер может заработать ?
- Какие советы вы могли бы дать начинающему веб-мастеру? Поделитесь секретами:)
- Можно-ли зарабатывать веб дизайном на жизнь? не зная php и язык програмирования?
- Можно ли использовать GO для программирования серверной части веб-приложений взамен PHP?