|
|
|
|
|
для: neadekvat
(06.10.2009 в 17:20)
| | Вы правы - каптча гораздо эффективнее и ставится довольно просто. Благодарю за совет! | |
|
|
|
|
|
|
|
для: Trianon
(06.10.2009 в 17:15)
| | Я не знаю ответ.
Хотя тоже хотел предложить сделать так:
<input type="hidden" value="<?=$z?>" name="sum">
Безопасность на том же уровне будет
Я лично использую каптчу, и мозг не напрягает (если картинка разборчива) и безопасность выше ("продвинутые" боты и картинку распознают, конечно, но уже что-то) | |
|
|
|
|
|
|
|
для: neadekvat
(06.10.2009 в 17:10)
| | Одно непонятно. Зачем все эти танцы с бубном? Боту два числа не сложить? | |
|
|
|
|
|
|
|
для: Степан
(06.10.2009 в 16:48)
| | Вверху страницы получить две переменные
В сессию записать их сумму
А потом на странице вывести эти переменные никак? | |
|
|
|
|
|
|
|
для: mihdan
(06.10.2009 в 17:04)
| | а закрывать их как? | |
|
|
|
|
|
|
|
для: Степан
(06.10.2009 в 15:14)
| | Не в тему, но
<?php
$errors = array();
if ($check != $z) $error[] = 'Текст ошибки 1';
if ($check != $b) $error[] = 'Текст ошибки 2';
.......
if (sizeof($errors) > 0) {
echo implode('<li>', $errors);
}
?>
|
| |
|
|
|
|
|
|
|
для: neadekvat
(06.10.2009 в 16:23)
| | Так ведь $a и $b нужно тоже получить $POST, если они стоят после $_SESSION['sum'], или они, если стоят выше, после нажатия на кнопку получают новое значение... | |
|
|
|
|
|
|
|
для: Степан
(06.10.2009 в 16:14)
| |
session_start();
$_SESSION['sum'] = $a + $b; // вот это на странице, где есть форма, надо вставить наверх, до вывода какого-либо символа в браузер. Т.е. рандомные числа и сумма уже известны. Потом идет разметка, выводятся числа (кроме суммы)
|
В обработчике формы добавляем тоже:
session_start();
if ($check != $_SESSION['sum']) echo 'Ошибка!';
|
| |
|
|
|
|
|
|
|
для: neadekvat
(06.10.2009 в 15:30)
| | заменил на if ($check != $_POST['z']), но $_POST['z'] после отправки формы не принимает значения | |
|
|
|
|
|
|
|
для: Степан
(06.10.2009 в 15:14)
| | $z - это $_POST['z'] после отправки формы
У вас в коде я вижу просто $z | |
|
|
|
|