Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.02.2009, 19:32   #1
Volt
Форумчанин
 
Аватар для Volt
 
Регистрация: 07.12.2008
Сообщений: 244
По умолчанию PHP проверка картинки

подскажите, как делается проверка введенного текста с картинкой на PHP.если картинку какждый раз при обновлении страницы меняет php сценарий
|̲̅̅●̲̅̅|̲̅̅=̲̅̅|̲̅̅●̲̅̅]
Volt вне форума Ответить с цитированием
Старый 03.02.2009, 20:45   #2
wall66
Участник клуба
 
Аватар для wall66
 
Регистрация: 04.10.2008
Сообщений: 1,485
По умолчанию

есть разные проверки кода:

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

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

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


способы их реализации полностью основаны на ваших познаниях в веб-языках программирования

бесплатный урок окончен
свободен...
wall66 вне форума Ответить с цитированием
Старый 04.02.2009, 12:01   #3
Volt
Форумчанин
 
Аватар для Volt
 
Регистрация: 07.12.2008
Сообщений: 244
По умолчанию

вот пример
Код:
<img src="im.php" alt="" border="0" align="absmiddle" vspace="0" style="border:1px solid #c0c0c0"/><input type="text" name="verif" id="verif" size="4" maxlength="4" style="width:40px;float:none;" value="" /><strong class="error">*</strong><br/>

<input type="submit" name="doSend" value="Оплатить" style="width:180px;"/>
и каким образом проверяется?
|̲̅̅●̲̅̅|̲̅̅=̲̅̅|̲̅̅●̲̅̅]
Volt вне форума Ответить с цитированием
Старый 04.02.2009, 12:12   #4
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,551
По умолчанию

Можно в куки пользователя поместить хэш, по которому выдавать картинку (тест берется из БД). А затем, по этому же хэшу, проверять корректность ввода.
Arigato вне форума Ответить с цитированием
Старый 04.02.2009, 12:54   #5
wall66
Участник клуба
 
Аватар для wall66
 
Регистрация: 04.10.2008
Сообщений: 1,485
По умолчанию

Код HTML:
<img src="im.php">
<input type="hidden" name="checkcode_right" value="сюда вписываешь правильный код с картинки с помощью php">
<input type="text" name="checkcode_input">а здесь будет то что ввел пользователь
в скрипте сверяешь эти два поля

защита тупая но от ботов спасет

также можно сделать из этих кодов хеши и сравнивать их
свободен...
wall66 вне форума Ответить с цитированием
Старый 05.02.2009, 02:37   #6
Johnatan
Antimoderаtoris
Участник клуба
 
Регистрация: 08.02.2008
Сообщений: 1,251
По умолчанию

Цитата:
Сообщение от wall66 Посмотреть сообщение
Код HTML:
<img src="im.php">
<input type="hidden" name="checkcode_right" value="сюда вписываешь правильный код с картинки с помощью php">
<input type="text" name="checkcode_input">а здесь будет то что ввел пользователь
в скрипте сверяешь эти два поля
защита тупая но от ботов спасет
также можно сделать из этих кодов хеши и сравнивать их

Жесть советик.

По теме: wall66 написал почти правильно, только вот сам код никогда нельзя ни в каком виде выкладывать в HTML. Боты найдут и порвут.
Такой способ проверки называется captcha. Существует огромное количество типов каптч.
http://ru.wikipedia.org/wiki/Captcha
Простейший способ: когда пользователь заходит на страницу для регистрации скрипт генерирует некую картинку с кодом, которую выводит пользователю, а в бд заносит уникальный хеш id этой картинки, время создания записи, ИП адрес пользователя и правильный код. Картинка выводится пользователю:
<img src="im.php?i=a456223b2eb75a221d3c9 a386de038c0" alt="" border="0" align="absmiddle" vspace="0" style="border:1px solid #c0c0c0"/>
<input type="hidden" name="id" id="id" value="a456223b2eb75a221d3c9a386de0 38c0">
<input type="text" name="verif" id="verif" size="4" maxlength="4" style="width:40px;float:none;" value="" />
где a456223b2eb75a221d3c9a386de038c0 - это хеш id, по которому из бд выбирается правильный ответ.
Когда пользователь отсылает код, то скрипт выбирает "правильный ответ" из бд (где ИП адрес совпадает с пользовательским и время создания записи не старее получаса, например) и сравнивает коды. Если всё ок, скрипт удаляет(!) строку с этим кодом из бд. Таким образом по данной картинке может зарегистрироваться только один пользователь.
98% из тысячи моих постов сделаны в профильном подфоруме. Я не накручиваю свои посты болтанием в "курилке", а ты?

Последний раз редактировалось Johnatan; 05.02.2009 в 02:54.
Johnatan вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Размер Image изменяется на размер картинки, а сама она рисуется на области первой картинки RPGer Мультимедиа в Delphi 6 20.10.2008 19:54
Картинки... Altera Свободное общение 5 24.07.2008 05:41
Картинки Rio309 Мультимедиа в Delphi 4 10.02.2008 00:36
БД и картинки Constellation БД в Delphi 2 06.12.2007 15:33
Картинки Акашаев Нурлан Помощь студентам 7 25.10.2007 20:46