|
|
|
| Всем привет. Тут небольшая проблемка возникла с каптчёй. В общем при сравнении введённых данных с числом на картинке всё время выкидывает, что число введено не верно(( Помогите с устранением этой проблемы? заранее спасибо)
файл chislo.php
<?php session_start();
header ("Content-type: image/gif");
$randgb = mt_rand(1111, 9999);
$_SESSION['randgb'] = $randgb;
$image = imagecreate(mt_rand(65,68), mt_rand(38,34));
$col_fon = imagecolorallocate($image, mt_rand(200,255), mt_rand(200,255), mt_rand(200,255));
$col_text1 = mt_rand(0,150);
$col_text2 = mt_rand(0,150);
$col_text3 = mt_rand(0,150);
$col_text = imagecolorallocate($image, $col_text1, $col_text2, $col_text3);
$ttf = mt_rand(1,2).'.ttf';
$x = mt_rand(6, 9);
$y = mt_rand(24, 25);
imagettftext($image, 20, mt_rand(-4,4), $x, $y, $col_text, $ttf, $randgb);
imagegif($image);
?>
индексный файл:
<form action="?add=addgb2" method="POST">';
echo 'Имя:<br>
<input type="text" value="" name="namegb"><br>
Сообщение:<br/>
<textarea name="textgb" cols="29" rows="4">Текст</textarea><br>
<img src="/gb/chislo.php" alt=""/><br>
Введите символы с картинки выше:<br>
<input type="text" name="chislogb"/><br/>';
echo $randgb;
echo '<input type="submit" value="Отправить"/>
</form>
проверка осуществляется так: if($chislogb !== $_SESSION['randgb'])
{echo 'Введённое число не совпадает с проверочным!<br>
<a href="?add=addgb">Назад</a>'; session_destroy(); exit;} | |
|
|
|
|
|
|
|
для: (Sandr)
(25.09.2010 в 02:29)
| | Проверяется где и почему $chislogb, а не $_POST['chislogb']? | |
|
|
|
|
|
|
|
для: sim5
(25.09.2010 в 06:03)
| | Мoжет включена register globals... | |
|
|
|
|
|
|
|
для: akmal
(28.09.2010 в 16:48)
| | И что, так и помереть с ней включенной? Хотя уверенности, что именно так нет, и все делается самотеком, ибо главная причина кроется вот тут:
<form action="?add=addgb2" method="POST">'; | |
|
|
|
|
|
|
|
для: sim5
(28.09.2010 в 17:00)
| | Всё, разобрался. Ну, причина какбы не там крылась)) Но это уже не важно) Всем спасибо) | |
|
|
|
|
|
|
|
для: (Sandr)
(28.09.2010 в 17:46)
| | Даже так? У вас атрибут action формы указывает адрес той же страницы, которая порождает форму, и если это таже страница, которая каптчу творит, а страница эта начинается с установки случайного числа и записи его в сессию, а значит по приходу формы.... ?
Да и если обращение у вас не через суперглобальные массивы, то это плохо. | |
|
|
|