Показать сообщение отдельно

  #4  
Старый 16.04.2008, 09:22
.:EnoT:.
Постоянный
Регистрация: 29.05.2007
Сообщений: 852
Провел на форуме:
4832771

Репутация: 1916


По умолчанию

Цитата:
Сообщение от Graf I  
Кто может напишите пожалуйста код с антиспамом.( с цифрами 4+2= типо того)
давно ещё брал этот скрипт на ачате, переделывал под себя.
PHP код:
<?php
session_start
();
$shrift 'my.ttf'#Шрифт TTF
$width 80#Ширина изображения
$height 30#Высота изображения
$imgimagecreate($width$height);
$bl imageColorAllocate($img255255255);
$z1 mt_rand(0,9);
$z2 mt_rand(0,9);
if(
$z1 $z2)
{
    
$str $z1.'-'.$z2.'=';
    @
$_SESSION['captcha'] = $z1-$z2;
}
else
{
    
$str $z1.'+'.$z2.'=';
    @
$_SESSION['captcha'] = $z1+$z2;
}
$bl imageColorAllocate($imgrand(0100), rand(0100), rand(0100));
imageTtfText($img15rand(-10,10), 015$blrealpath($shrift), $str);
header("Content-type: image/jpeg");
imagejpeg($img);
?>
Простой до ужаса, выводит два числа которые нужно сложить или вычесть, юзеру нужно ввести результат.
Вызывается соответственно:
Код:
<img src="script_name.php" alt="" border="0" />
<input type="text" name="img" />
а ещё лучше добавлять случайное число, чтобы картинка не кешировалась.
Проверяется так:
PHP код:
<?php
$img 
$_POST['img'];
if(
intval($img) != $_SESSION['captcha'])
{
   echo 
'Сумма с картинки введена неправильно';
}
else
{
   echo 
'OK';
}
?>