Каков наилучший метод безопасности $ _POST?

Я создал страницу профиля. И я получаю значения непосредственно из входных данных с помощью метода $ _POST. Пользователи обновляют свой профиль на этой странице. Интересно, это метод безопасности? И я использую это в wp_list_table тоже.

Ответы и комментарии:

безопасность - это все, что связано с контекстом, и вы не предоставляете ничего, поэтому невозможно получить какой-либо значимый ответ на вопрос. Если $ _POST небезопасен, что вы будете использовать вместо этого? Пожалуйста, отредактируйте вопрос и добавьте конкретный код
Создан 12-03-2018 08:41 Mark Kaplun

Вы на самом деле не должны использовать очистку текстового поля перед сохранением значения в метаполе. Пользователи будут расстроены, если вы покалечите их имена без причины.
Создан 12-03-2018 08:26 Mark Kaplun

Вы должны дезинфицировать или избегать данных в зависимости от типа и применения данных. Как ниже-
$ title = sanitize_text_field ($ _POST ['title']);
update_post_meta ($ post-> ID, 'title', $ title);

Это довольно огромная тема. Вам лучше прочитать это Проверка санитарии и экранирования пользовательских данных.
Создан 12-03-2018 08:04 CodeMascot3,6872619

Помимо функций WordPress, которые упомянутый выше the_dramatist связывал с WordPress Codex, существует также очень полезная встроенная функция PHP, которая позволяет очистить все данные из суперглобального $ _POST сразу: filter_input_array. Смотрите php документы. Пример:
// допустим, я ожидаю получить такие данные:
$ _POST = [
    'myString' => 'Hello World',
    'myInteger' => 42,
    'myArrayOfStrings' => [
        'Привет',
        'Мир',
    ],
];

// очистка $ _POST super global:

$ data = filter_input_array (INPUT_POST, [
    'myString' => FILTER_SANITIZE_STRING,
    'myInteger' => FILTER_VALIDATE_INT,
    'myArrayOfStrings' => [
        'filter' => FILTER_SANITIZE_STRING,
        'flags' => FILTER_REQUIRE_ARRAY,
    ],
]);

// теперь $ data содержит массив очищенных значений
Создан 12-03-2018 08:07 Levi Dulstein781211