DWWEB.RU
СКРИПТЫ

Капча с картинкой

Капча с картинкой через php! Мы будем делать капчу с картинкой! Нам нужна капча с картинкой, чтобы использовать в форме!

Начнем с самого начала и разберем весь процесс создания капчи с картинками через php!

Навигация по странице :
  1. Картинки для капчи с картинкой
  2. Форма для капчи с картинкой.
  3. Вывод картинки для капчи с картинкой
  4. Получение слова и названия картинки
  5. Код капчи с картинкой в сборе
  6. Живой пример капчи с картинкой


    Картинки для капчи с картинкой

  1. Для капчи с картинкой нам понадобятся эти самые картинки! У нас в скрипте, который будет обрабатывать нашу капчу с картинками будет всего 6 картинок, размер картинки 100х100px:
  2. Капча с картинкой Капча с картинкой Капча с картинкой Капча с картинкой Капча с картинкой Капча с картинкой


    Форма для капчи с картинкой.

  3. Форму будем отправлять методом пост(method="post"), экшен пустой(action=""), ели в принципе он пустой, то его можно уже и не указывать -форма должна срабатывать и без этого!
  4. У нас будет два инпута(input), первый тип текст type="text", в котром будем заполнять название животного, которое будет выведено. И второй скрытый type="hidden", в который будем получать слово, которое будет принадлежать данной картинке - это будет переменная $slovo, как и откуда берется эта переменная и что внутри, в следующем пункте.

    <form action="" method="post">

    <input type="text" name="text_kapcha" placeholder="Название животного" required><br>

    <input type="hidden" name="hidden_kapcha" value="'.$slovo.'" ><br>

    <button name="otpravit" value="Привет!">Отправить</button>

    </form>


    Вывод картинки для капчи с картинкой

  5. Нам потребуется для вывода картинок массив, в каждой ячейке котрого будет находится название картинки, вывод которых приведен выше:
  6. $array = array('slon','kot','krokodile','mish','petuh','kon');
    Далее нам понадобится функция array_rand, которая будет выбирать одно слово случайным образом из нашего массива:
    $array_rand = array_rand($array, 1);
    Когда мы получили одно значение из этого массива, слово на латинице нужно проверить, чему оно равно, если например это слово slon , то переменная $slovo будет равно слову слон

    if($array[$array_rand] == 'slon'){$slovo = 'слон';}

    if($array[$array_rand] == 'kot'){$slovo = 'кот';}

    if($array[$array_rand] == 'krokodile'){$slovo = 'крокодил';}

    if($array[$array_rand] == 'mish'){$slovo = 'мышь';}

    if($array[$array_rand] == 'petuh'){$slovo = 'петух';}

    if($array[$array_rand] == 'kon'){$slovo = 'конь';}

    Для иллюстрации этого процесса, выведем сперва echo $array[$array_rand], попробуйте несколько раз перезагрузить страницу!

    kon

    А вторым слово echo $slovo

    конь

    И третьим уже выведем эту картинку таким образом:

    <img border="1px solid" width="100px" height="100" src="//dwweb.ru/__a-data/__foto/php/kapcha/'.$array[$array_rand].'.jpg" title="'.$slovo.'">

    И результат:


    Получение слова и название картинки

  7. Поскольку мы помним, что поля у нас два 1).текст, 2). скрытое, в котром попадает название картинки на английском.
  8. $text_kapcha = strip_tags(trim($_POST['text_kapcha']));

    $hidden = strip_tags(trim($_POST['hidden']));

    Далее идет проверка того, что было отослано в форме! Если в поле $text и $hidden одинаковые значения, то Все верно, если нет - ответ не правильный!

    if($_POST['otpravit'])

    {

    if($text_kapcha == $hidden)

    {

    $show = '<b style="color: red">Все верно</b><br>';

    }

    else

    {

    $show = '<b style="color: red">Ответ не правильный!</b><br>';

    }

    }


    Код капчи с картинкой в сборе

  9. Теперь нам осталось собрать выше перечисленный код в готовый код для капчи с картинкой!
  10. $array = array('slon','kot','krokodile','mish','petuh','kon');

    $array_rand = array_rand($array, 1);

    if($array[$array_rand] == 'slon'){$slovo = 'слон';}

    if($array[$array_rand] == 'kot'){$slovo = 'кот';}

    if($array[$array_rand] == 'krokodile'){$slovo = 'крокодил';}

    if($array[$array_rand] == 'mish'){$slovo = 'мышь';}

    if($array[$array_rand] == 'petuh'){$slovo = 'петух';}

    if($array[$array_rand] == 'kon'){$slovo = 'конь';}

    $text_kapcha= strip_tags(trim($_POST['text_kapcha']));

    $hidden = strip_tags(trim($_POST['hidden']));

    if($_POST['otpravit'])

    {

    if($text_kapcha == $hidden)

    {

    $show .='<b style="color: red">Все верно</b><br>';

    }

    else

    {

    $show .='<b style="color: red">Ответ не правильный!</b><br>';

    }

    }

    $show .= 'Пожалуйста напишите <br>

    если сомневаетесь наведите мышку на картинку<br>

    <img border="1px solid" width="100px" height="100" src="//dwweb.ru/__a-data/__foto/php/kapcha/'.$array[$array_rand].'.jpg" title="'.$slovo.'">

    <form action="" method="post">

    <input type="text" name="text_kapcha" placeholder="Название животного" required><br>

    <input type="hidden" name="hidden_kapcha" value="'.$slovo.'" ><br>

    <button name="otpravit" value="Привет!">Отправить</button>

    </form> ';


    Живой пример капчи с картинкой

  11. Пожалуйста напишите
    если сомневаетесь наведите мышку на картинку



И да...мы ранее уже делали капчу цифровую + капчу со словами

Не забудь !
Название скрипта :Капча с картинкой
Скрипт № 9.1
Скачать - архив
Все скрипты на одной странице
Оставить комментарийCOMMENTS+
Сообщений пока нет - Вы можете стать первым
BBcode
нажмите, чтобы загрузить аватар
Загрузить свой аватар(max ширина, высота = 100px) ( как это работает)

Закрыть
+ =
Подписаться
Теги:
Капча с картинкойкак сделать капчу с картинкойКапча с картинкой phpcaptcha с картинкамипример капчи картинки

НАШИ ПРОЕКТЫ : Проекты находятся в разной степени готовности (просто их столько, что времени не хватает…) Все статьи авторские, при копироавании активная ссылка обязательна DwWeb.ru! © 2015 - 2019