Проверка данных $ _POST

Я делаю проверку спама на форме. Код ниже работает так же, как и на моем локальном хосте (перенаправление на google.com, если оно истинно), однако оно не происходит, когда оно находится на рабочем сервере (выполняет оставшуюся часть скрипта и НЕ перенаправляет на Google.com).

if('POST' == $_SERVER['REQUEST_METHOD']) { if ($_POST["bait"]!='' || $_POST["date"] == "12/31/69" || trim($_POST["date"] == "1969-12-31")) { header("location: http://www.google.com"); } else { //Process form here 

Я сделал var_dump на $_POST и это 1969-12-31

Что я делаю не так?

Вы должны exit; после отправки заголовка местоположения, чтобы предотвратить выполнение остальной части сценария.

например

 if('POST' == $_SERVER['REQUEST_METHOD']) { if ($_POST["bait"]!='' || $_POST["date"] == "12/31/69" || trim($_POST["date"] == "1969-12-31")) { header("location: http://www.google.com"); exit; } else { // process form here } } 

Переадресация отправляется, но вы также продолжаете выводить остальную часть запроса, и в этом случае поведение может быть неопределенным.