1. Главная / Блог / PHP / Получение данных

Получение данных


Нет комментариев.


Выкладываю пример кода на PHP получение и обработка данных от элемента <form>.


Создадим файл data.php и напишем следующий код.

<?php
$text="<form action=\"data.php\" method=\"post\">";
$text.="<input type=\"text\" name=\"data\" placeholder=\"данные\">";

$text.="<button type=\"submit\">Готово</button>";
$text.="</form>";
echo $text;

//получаем данные
$data=valid($_POST['data']);
echo ($data);

function valid ($res) {
$id = trim(strip_tags(strval($res)));
if(preg_match('/(union|select|from|where)/i', $id))
$err_text='Атака хакера! // no sqli select keywords';
if(preg_match('/(group|order|having|limit)/i', $id))
$err_text='Атака хакера! // no sqli select keywords';
if(preg_match('/(into|file|http:|https:|case)/i', $id))
$err_text='Атака хакера! // no sqli operators';
if(preg_match('/(--|#|\/\*)/', $id))
$err_text='Атака хакера! // no sqli comments';
if(preg_match('/(&|\|)/', $id))
$err_text='Атака хакера! // no boolean operators';

if($err_text!=''){
exit($err_text);
}else{
$id=trim(strip_tags($id));
return $id;
}
}
?>

Из <form> получаем данные от <input> с помощью метода $_POST.

Прогоняем через собственную функцию valid, о ней ниже. И показываем результат.

Функция valid очищает данные от мусора, это особенно важно если данные будут для MySQL.

strval - Возвращает строковое значение переменной.

strip_tags - Удаляет HTML теги из строки, не трогая их содержимого.

trim - Удаляет пробелы из начала и конца строки.

preg_match - Проверяет отсутствие служебных символов MySQL, #, & и т.д, или слов limit, where и т.д.



Нет комментариев.


Оставить комментарий

Ваше имя:

Оценка