Поскольку ваш пример кода является PHP-кодом, кажется, что вы публикуете форму и проверяете ее на стороне сервера, а затем вы видите предупреждение, если какое-либо поле пусто? В этом случае страница уже была перезагружена до отображения окна предупреждения. Вы смешиваете код на стороне сервера и на стороне клиента.
Если вы хотите показать окно предупреждения, если пользователь не заполнил все поля (без перезагрузки страницы), вам придется выполнить проверку с помощью JavaScript. Вы все равно должны сохранить свою PHP-валидацию!
Если вы используете, например, jQuery, вы можете сделать что-то вроде этого:
$("#your-form-id").submit(function(){
// Check all your fields here
if ($("#input-field-1").val() === "" || $("#input-field-2").val() === "")
{
alert("Please fill out all fields");
return false;
}
});
Конечно, это можно сделать и без jQuery. В этом случае вы можете использовать атрибут onsubmit
тега формы для вызова функции JavaScript при публикации формы, и в рамках этой функции вы проверяете форму, отображаете окно с предупреждением, если какое-либо поле пусто, и затем верните false из функции, чтобы предотвратить отправку формы на сервер.