Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
 
Фильтр авторов:    показать 
  скрыть
  Ответ в темуСоздание новой темыСоздание опроса

> Фильтрация данных формы
Raymond  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 3
Пользователь №: 43562
На форуме: 28 дней
Карма:




К примеру, у меня есть форма, где пользователь из тега select name = 'country' может выбрать страну проживания. Т.к. форму можно подделать, и в $_POST["county"] мне может прилететь что угодно, то стоит ли проверять этот самый $_POST["county"] на наличие в массиве с названиями стран?

и если нет, то какая практика в таких случаях применяется? Как проверять данные на соответствие определенному набору значений?

Это сообщение отредактировал Raymond - 6.11.2016 - 00:22
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Ron  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 1042
Пользователь №: 41686
На форуме: 1 год, 3 месяца, 25 дней
Карма: 13




Это называется валидацией.

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

Если первая проверка прошла успешно, можно переходить к проверке "смыслового" содержания. Этот этап, как правило, тесно связан с БД и нацелен на сохранение консистентности данных. Благо таких полей в формах обычно немного.

Вам нужно проверять не само слово (название страны) а существование соответствующего ID в справочнике стран. Ну или ключа массива, тут смотря какая задача, может быть база данных и не нужна, если это что-то совсем простое, типа формы обратной связи, которая отсылает данные сразу на почту.

Но вообще-то вангую неправильную архитектуру БД вашего проекта.


--------------------
Жду 5.11.2017
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
inpost  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Помагите Здесь живу!!!
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 22689
Пользователь №: 20039
На форуме: 6 лет, 11 месяцев, 27 дней
Карма: 599




Raymond
Конечно надо проверять. Где хранишь название стран - с тем и сверяй.


--------------------
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
PMПисьмо на e-mail пользователюICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
  Быстрый ответ
Информация о Госте
Введите Ваше имя
Кнопки кодов
Для вставки цитаты, выделите нужный текст и
НАЖМИТЕ СЮДА
Введите сообщение
Смайлики
:huh:  :o  ;) 
:P  :D  :lol: 
B)  :rolleyes:  <_< 
:)  :angry:  :( 
:unsure:  :blink:  :ph34r: 
     
Показать всё

Опции сообщения  Включить смайлики?
 Включить подпись?
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темы Ответ в темуСоздание новой темыСоздание опроса