Может ли злоумышленник отправить методом $_POST
какую нибудь билеберду, в обход формы? Например, я ожидаю получить $_POST['userName']
и $_POST['userEmail']
, а мне приходит $_POST['iAm']
и $_POST['coolHacker']
.
В таком случае, если для меня критичны названия полей, и далее я их использую в своём скрипте - это может нарушить его работу. Что бы не работать напрямую с массивом $_POST
, целесообразно ли будет его обработать следующим способом?
$formData = ['field1Name' => '', 'field2Name' => ''];
foreach ($formData as $fieldName => $value) {
if (isset($_POST[$fieldName])) {
$formData[$fieldName] = $_POST[$fieldName];
}
}
Я бы вам посоветовал использовать функцию array_intersect_key, выглядит более красиво:
$fields = ['field1Name', 'field2Name'];
$formData = array_intersect_key($_POST, array_flip($fields));
Результат будет тот же, но меньше кода.
По поводу вопроса - может ли добавить? Легко, просто меняет исходный код страницы или если через curl - добавляет параметры.
Вопрос безопасности в проекте должен быть реализован более глобально. С таким подходом вы точно где-то допустите ошибку. Пилите проект как угодно, а потом отдельно займитесь безопасностью. Найдите все шлюзы для данных и добавьте валидаторы для того чтобы не допустить попадания в обработку нецелевых данных.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Есть скрипт, нужно при его выполнении выводилось сообщение "Заявка отправлена"и модальное окно закрывалосьСкрипт работает а вот сообщение...
Есть два игрокаКаждый выбирает "атаку" и "защиту", это может быть: Голова - 1 Живот - 2 Руки - 3 Ноги - 4 Цифры - ID
Решаю задачки по составлению функций для новичков, которые проверяются по ожидаемым вводным данным с ожидаемыми результатамиВ ожидаемом...