×

Вокруг мира ВыборгПоследние новостиПетербург и окрестностифакты и мирОбщество, мирпро сссртунистурцияСтрашное и мистическоеТайны историиКрым
Интересно Мистика и ГаданияМузыкаАнекдотыуроки по html,css,js,php
Исскуство и поэзия ПритчиЯпонские стихи и прозаСтихи Золотого векаМифы и Легенды древнего мираСтихи Серебренного векаБасни
Разные эпохи Тайны историипро сссрДревняя АзияСредневековьеСказки народов мира
Разное Страшное и мистическоеОригамиКонвертерыКомедия "Дино и его друзья"Раскраски
общество и мир Общество, мирАфоризмы и цитатыфакты и мирПоследние новостиПсихология

-----------

Вашему сайту нужна помощь? Политика конфидициальности Разместить рекламу

Защита сайта от СПАМА. проверка в форме.


защита, спам, форма, сайт, php, js, css, sql, проверка, отправка,

С каждым годом спамные роботы становятся всё умнее и умнее. Они уже научились понимать текст, понимать что изображено на картинке, складывать числа и прочее.
Но главное, что не умеют роботы - разгадывать загадки и отвечать на вопросы человека :)
Именно такой пример защитника форм от спам-ботов я и хочу сегодня показать.

Для начала нужно создать простую форму и поле с именем proverka.

<form method="POST" action="page.php" >
<input style="width:90%"name="ty" placeholder="как тебя зовут?"id="name1" type="text" /><br />
<br><br>Какие ты знаешь числа до десяти? (проверка на бота)
<br><input style="width:60%"name="proverka" style="width:90%" placeholder="например: 8" type="text" /><br ><br >
<input style="width:90%"type = 'submit' name = 'submit' value= 'готово!' class="button" />
</form>


После того как посетитель сайта нажмет кнопку ГОТОВО. Будет обрабатываться следующий запрос:
0. Присваиваем переменные отправленным данным из формы
1. идет подключение к БД.
2. идет обработка на правильность введенных данных (проверка на число).
Если число введено неверно, то выйдет надпись с просьбой повторить ввод.
Если число меньше 10, то введенные в форму данные (а именно поле name1, где пользователь вводил свое имя) будет отправленно в базу данных.

<?php
$n = $_POST['name1'];
$proverka = $_POST['proverka'];
//присваивание переменных отправленным данным из формы, методом POST
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "";
// подключение к бд
$conn = mysqli_connect($servername, $username, $password, $dbname);
// Check connection
if (!$conn) {
die("Ошибка: " . mysqli_connect_error());
}

$sql = ("INSERT INTO table (name) VALUES ('$n')"); // $n - двнные из поля name1, где вводится имя. $proverka отправлять в базу данных не нужно.

//наало проверки на число начинается тут
if ($proverka > "10"){ //вот сам код проверки. если число больше десяти, то выводится ошибка.
echo "число больше десяти. ошибочка. повтори опять";
} elseif (mysqli_query($conn, $sql)) //если данные ведены верно, то идет подклюение к бд и отпрвка данных, через mysqli .
{
echo "<font color='green'>Ваше сообщение добавлено :)</font><br>";
}
//конец проверки заканчивается именно тут
else {
echo "Ошибка: Попробуй ещё раз" . mysqli_error($conn);
}

mysqli_close($conn);
?>


Вот простой пример проверки. Если вам не нравиться число десять, то можете подставить другое число. Можете на базе этого кода даже создать проверку на кодовое слово. Например: "ехал грека через реку, видит грека в реке ...." и пропущенное слово будет ключом, которое должен будет ввести пользователь.




Комментарии

Комментариев пока нет. Оставь тут свой комментарий или анекдот!


Комментарии к посту






Америка – рай для женщин. Вот почему, как в свое время Ева, они стремятся поскорей оттуда вырваться.

Оскар Уайльд


Norway
Бабочки пробуют вкус пищи при помощи задних лапок. А цвет их крыльев создается крошечными перекрывающимися чешуйками, которые отражают свет.

[ Интересные факты о мире ]






как на php сделать новостную ленту или список статей?
Объеденить два блока в одном. css, html
Страшное и мистическое Петербург и окрестности тунис Тайны истории Общество, мир Последние новости про ссср Выборг турция факты и мир Крым






×

Рассказы из категории: Создание сайта (html,css,php,js)