5

Сайт-
визитка:

Сайт-визитка – это небольшой по размеру сайт (объем до 10 страниц), на котором размещается информация например о вашей компании.

0

Корпоративный сайт:

Это, веб-интерфейс определенной компании, который создан для доступа сотрудника к корпоративным данным и приложениям.

8

Интернет-магазин:

сайт, позволяет пользователям онлайн, в своём браузере, сформировать заказ на покупку, выбрать способ оплаты и доставки заказа.

Создание CAPTCHA на PHP

В этом уроке продолжаем защищаться от спамеров. В уроке по Созданию расширенной формы обратной связи я описывал, как создавать проверку вводимых данных. В этом уроке мы с вами поговорим еще про один способ защиты от спамеров – это CAPTCHA. Как вы, наверное, уже догадались, в этом уроке мы будем создавать CAPTCHA.

Для начала создадим простую форму.

<form action="" method="post" name="form"> <p>Имя:</p> <input name="name" type="text" /> <p>E-mail:</p> <input name="email" type="text" /> <input name="send" type="submit" value="Отправить" /> </form>

Теперь приступит к созданию защиты от спамеров. CAPTCHA – это изображение состоящее из случайных символов.

Создание CAPTCHA на PHP

Для реализации CAPTCHA нам прейдет на помощь PHP. Давайте создадим сценарий, который будет генерировать случайное изображение.

<?php session_start(); header("Expires: Mon, 26 Jul 2010 05:00:00 GMT"); header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); header("Cache-Control: no-store, no-cache, must-revalidate"); header("Cache-Control: post-check=0, pre-check=0", false); header("Pragma: no-cache"); function _generateRandom($length=6) { $_rand_src = array( array(48,57) //цифры , array(97,122) //строчные символы //, array(65,90) случайные символы ); srand ((double) microtime() * 1000000); $random_string = ""; for($i=0;$i<$length;$i++){ $i1=rand(0,sizeof($_rand_src)-1); $random_string .= chr(rand($_rand_src[$i1][0],$_rand_src[$i1][1])); } return $random_string; } $im = @imagecreatefromjpeg("captcha.jpg");// Любая картинка $white = ImageColorAllocate ($im, 255, 255, 255); $black = ImageColorAllocate ($im, 0, 0, 0); $rand = _generateRandom(3); $_SESSION['captcha'] = $rand; ImageString($im, 5, 2, 2, $rand[0]." ".$rand[1]." ".$rand[2]." ", $black); $rand = _generateRandom(3); ImageString($im, 5, 2, 2, " ".$rand[0]." ".$rand[1]." ".$rand[2], ImageColorAllocate ($im, 255, 0, 0)); Header (‘Content-type: image/jpeg’); imagejpeg($im,NULL,100); ImageDestroy($im); ?>

Для реализации CAPTCHA мы будем использовать сессии. На какой странице Вам необходимо реализовать CAPTCHA, откройте сессию.

<?php session_start() ?>

Теперь создадим проверку ввода CAPTCHA. Если пользователь введет правильно, будут выполняться действия, отправка на электронную почту, добавление комментария и т.д.

if($_SESSION["captcha"]==$_POST["captcha"]) { //CAPTHCA совпадает. Идет выполнение действий. }

Наконец присоединим нашу CAPTCHA к форме.

<?php session_start() ?> <form action="" method="post" name="form"> <p>Имя:</p> <input name="name" type="text" /> <p>E-mail:</p> <input name="email" type="text" /> <input name="send" type="submit" value="Отправить" /> </form> <?php if(isset($_POST["captcha"])) if($_SESSION["captcha"]==$_POST["captcha"]) { //CAPTHCA совпадает. Идет выполнение действий echo ‘CAPTHCA совпадает’; } else { echo ‘CAPTHCA не совпадает, попробуйте еще раз.’; } ?>

Вот и все. Этот простой способ поможет вам защититься от спамеров.

P.S. сценарий создания CAPTCHA лучше всего размещать в файле с формой.

Comments are closed.