Простейшая из функций защиты от роботов, капча

Простейшая из функций защиты от роботов, капча

<?php
function generate_code () {
  srand (time());
  $num=round(rand(1,4));
  $valid=0;
  echo "$num-й код из чисел: ";
  for ($i=1; $i<5; $i++) {
   $n=round(rand(1000,9999));
   if ($i==$num) $valid=$n;
   echo "$n";
   if ($i<4) echo ", ";
   else echo '<br/>';
  }
  $valid1=md5($valid);
  echo "<input type=text name=code size=4 maxlength=4 value=\\"\\"><input type=hidden name=valid value=\\"$valid1\\">";
}

//Вызов
echo generate_code();

//Проверка
if ( empty($_POST['code']) or empty($_POST['valid']) or md5($_POST['code'])!=$_POST['valid'] )
    die('Капчу запили блеать!');

+ Не использует сессии

0 comments
  1. Kichrum
    Kichrum
    17.08.2011 at 16:44

    Простейшая, но никак не защищенная же. Отсутствие сессий в капче – больше минус, чем плюс. А вот то что без GD, это плюс. Но минусов больше. Не зря же ты используешь рекапчу, а не этот код 😉

    Reply
Оставить комментарий

Ваш электронный адрес не будет опубликован. Обязательные поля помечены *