Я чувствую, что это должен быть комментарий, так как этот вопрос является широким, но ограничение по количеству символов и т.д. ...
Если вы хотите, чтобы пользователь мог выбирать только из предопределенного списка, внедрите именно это поведение в своей внутренней проверке.
Например:
$allowed_values = [0,1];
if (!in_array($_GET['select'], $allowed_values) {
die('Please select a valid option');
}
Если они отправляют что-то еще, кроме того, что вы указали, не позволяйте вашей системе прогрессировать.
В идеале не просто выкидывать их на какую-то пустую страницу с сообщением об ошибке, я бы посоветовал изящно вернуть их в вашу форму и выделить, какая часть была недействительной.
Всегда проверяйте все, что представлено, есть множество хороших / плохих примеров (широкий вопрос) по теме.
Конечно, вы можете реализовать проверку на стороне клиента с помощью JS , или некоторые вещи можно выполнить непосредственно в HTML , что будет удобнее для пользователя, но это так же легко манипулировать, поэтому если вы идете по этому пути, это должно быть сделано в дополнение к вашей проверке PHP, а не вместо.