Как и в других штатах, у вас должно быть несколько файлов; header.php, index.php, footer.php, formvalidator.php.
В вашем файле index.php вы должны включить header.php и footer.php.
В теге формы действие устанавливается для загрузки formvalidator.php
В скрипте валидатора формы вы можете получить что-то вроде этого:
// All form fields are identified by '[id]_[name]', where 'id' is the
// identifier of the form type.
// The field identifier we want to return is just the name and not the id.
public function getFormData() {
$formData = array();
foreach ($_POST as $key => $value)
{
// Remove [id]_
$name = preg_replace('!.*_!', '', $key);
if (is_array($value)) {
$formData[$name] = implode(',', $value);
} else {
$formData[$name] = $value;
}
}
return $formData;
}
Теперь вы можете перебирать массив и проверять каждое поле.
Если вы нашли ошибку, выведите сообщение об ошибке, в противном случае обработайте форму.
Обновление
Ответьте на ваше обновление.
Вы не должны "никогда" использовать die (). Вместо этого выйдите из функции, в которой вы находитесь, и верните сообщение об ошибке. Если ты просто умрешь (), то никогда не узнаешь, что пошло не так.
Невозможно выполнить проверку формы на сервере, если вы не нажмете кнопку отправки.
Вы можете поместить код, который я дал вам, в тот же PHP-файл, что и форма, и когда вы отправляете, вы просто перезагрузите ту же страницу (просто установите action="<?= $_SERVER['PHP_SELF'] ?>"
)
Если вы хотите проверить поля перед отправкой, вы должны сделать это с помощью javascript, например, например. jQuery.validate .
Хм ... похоже, вам нужно больше знаний о том, как смешивать PHP с HTML.
Взгляните на это руководство для начинающих о том, как работать с формами в PHP.