Обработка POST с помощью функции

Pasha9k

Добрый день.

Подскажите как правильно обрабатывать данные переданные методом POST или GET с помощью функции.

Например:

// Проверяем введенное имя
if(isset($_POST[‘name’])){
$name= filter_input(INPUT_POST, ‘name’, FILTER_SANITIZE_STRING);
}
Можно ли данную проверку сделать при помощи функции?

что-то вроде

function post_string(‘name’) {
if(isset($_POST[‘name’])){
$name= filter_input(INPUT_POST, ‘name’, FILTER_SANITIZE_STRING);
return($name);
}
}

 

Drunkenmunky

Я так понимаю, вы хотите получить универсальный способ обработки пользовательского ввода.
Дурацкая затея.
Обрабатывать нужно исходя из последующих действий с полученным.
Если это будет передано в базу данных – одно.
Если записываться в сессию – другое.
Для вывода на страницу – третье.
Для упрощения кода можно устанавливать переменные в значения по умолчанию, а дальше уже проверять глобальные массивы.

 

Pasha9k

У меня были формы, где клиенту нужно было заполнять много однотипной информации и я подумал, что было бы здорово и место меньше занимало бы…

 

Drunkenmunky

Ну, никто не запрещает вместо одной функции, написать три.
Но их содержимое всегда в уме держать придется.
Чтоб не перепутать.

 

GoldenFILL

PHP:
  1. public function clean($data)
  2.     {
  3.         if (is_array($data)) {
  4.             foreach ($data as $key => $value) {
  5.                 unset($data[$key]);
  6.                 $data[$this->clean($key)] = $this->clean($value);
  7.             }
  8.         } else {
  9.             $data = htmlspecialchars($data, ENT_COMPAT, ‘UTF-8’);
  10.         }
  11.         return $data;
  12.     }
  13.  
  14.     //==========================================================================
  15.  
  16.     public function __construct()
  17.     {
  18.         $this->SERVER = $this->clean($_SERVER);
  19.         $this->GET = $this->clean($_GET);
  20.         $this->POST = $this->clean($_POST);
  21.         $this->REQUEST = $this->clean($_REQUEST);
  22.         $this->COOKIE = $this->clean($_COOKIE);
  23.         $this->FILES = $this->clean($_FILES);
  24. }
 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *