Абсолютно проверяйте это.
ли что-то вроде этого псевдокода на приемном конце:
if { posted_value is_element_of($array_of_your_choices) }
//processing code
else {
//prompt them for good input
}
Так, например: Ваш список раскрывающийся основных цветов они хотели бы нарисованными их дом. Вы должны были бы (в PHP)
$colors = array('red', 'blue', 'yellow');
if in_array($_POST['color'], $colors)
{ //process this code! dispatch the painters; }
else {echo "sorry, that's not a real color";}
Edit: Это, конечно, возможно. Если ваши значения передаются с помощью запроса GET, пользователь может просто ввести www.example.com/?price=0
, чтобы получить бесплатный дом. Если это запрос POST, это может показаться немного сложнее, но это на самом деле не так:
curl_setopt($ch, CURLOPT_POSTFIELDS,"price=0");
Люди могли бы просто использовать CURL непосредственно манипулировать запрос POST, в дополнении к тривиальному большому количеству других клиентов.
Если вы говорите о безопасности: Абсолютно. Любые входящие данные можно манипулировать свободно. –
Вы должны выполнить этот тип проверки как на клиенте, так и на сервере. На сервере, чтобы предотвратить прикрепление инъекций, как Джереми Пауэлл, рекомендуется и на клиенте предотвращать попадание плохих данных на сервер. – ajrawson
Даже не нужно использовать cURL. Я мог бы просто Firebug в поле, заменить текст или использовать панель инструментов веб-разработчика. Или Передача. Это очень легко с небольшим количеством ноу-хау. – alex