|
 24.1 Кб |
|
| Нашел в Интернете готовый вариант капчи. Скрипт рабочий, но работает он странно: в php.ini меняю E_ALL & ~E_NOTICE на E_ALL и капча перестает работать.
В чем проявляется такая взаимосвязь?
Я прикрепил сам скрипт к теме, но для наглядности привожу код:
<?php
session_start();
header("Content-type: image/png");
$img=imagecreatetruecolor(130,40) or die('Cannot create image');
imagefill($img, 0, 0, 0xFFFFFF);
$x=0;
$i=1;
$sum = "";
$font="bremenv.ttf";
while ($i++<=5) {
imagettftext($img, rand(18,25), rand(-12,12), $x=$x+20, 25+rand(0,10), imagecolorallocate($img,rand(0,128),rand(0,128),rand(0,128)), $font, $rnd=rand(0,9));
$sum = $sum.(string)$rnd;
imageline($img, 0, rand(0,40), 130, rand(0,40), imagecolorallocate($img,rand(0,128),rand(0,128),rand(0,128)));
}
$_SESSION[secret_number] = $sum;
imagepng($img);
imagedestroy($img);
?>
|
| |
|
|
|
|
|
|
|
для: hxt
(20.01.2011 в 16:13)
| | Следует временно заменить тип на Content-Type: text/html , запустить скрипт отдельно и посмотреть, какие вылезают диагностические сообщения.
Как вариант, можно (нужно) включить на сервере/сайте запись диагностики в log-файл, и посмотреть диагностику в нем.
И последнее. Если Вы находите в интернете готовый скрипт без анонсированной техподдержки, в котором сами Вы не в состоянии разобраться, то такой скрипт лучше сразу выкинуть. Он Вам только навредит. | |
|
|
|
|
|
|
|
для: Trianon
(20.01.2011 в 16:32)
| | Интересный способ, не знал о таком. Спасибо большое за подсказку. Проблема крылась в этом участке кода:
<?php
$_SESSION[secret_number] = $sum;
?>
|
Я добавил одинарные кавычки и код заработал. | |
|
|
|
|
|
|
|
для: Trianon
(20.01.2011 в 16:32)
| | Сейчас нашел вероятного автора этой каптчи http://www.sklyaroff.ru/art.php?m=64
Возможно это его разработка, но я видел еще раньше такую же каптчу у Фленова | |
|
|
|