Прошу прощения за новый вопрос, но я действительно не могу понять, как это сделать. Поэтому сначала у меня есть контактная форма, которая находится в модальном окне. Серверная сторона контактной формы (PHP-сторона) находится в другом файле contact.php
. В этом файле у меня есть некоторые проверки для полей. Я хочу, когда есть пустое поле или неправильный ввод, чтобы показать сообщение об ошибке в форме. Прямо сейчас загружается contact.php, и там есть ошибки. Это часть для проверки от contact.php
Отображение сообщений об ошибках в другом файле
function died($error) {
echo "We are very sorry, but there were error(s) found with the form you submitted. ";
echo "These errors appear below.<br /><br />";
echo $error."<br /><br />";
echo "Please go back and fix these errors.<br /><br />";
die();
}
// validation expected data exists
if(!isset($_POST['firstname']) ||
!isset($_POST['lastname']) ||
!isset($_POST['email']) ||
!isset($_POST['phone']) ||
!isset($_POST['description'])) {
died('We are sorry, but there appears to be a problem with the form you submitted.');
}
$firstname = $_POST['firstname']; // required
$lastname = $_POST['lastname']; // required
$email = $_POST['email']; // required
$phone = $_POST['phone']; // not required
$description = $_POST['description']; // required
$error_message = "";
$email_exp = '/^[A-Za-z0-9._%-][email protected][A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/';
if(!preg_match($email_exp,$email)) {
$error_message .= 'The email address is not valid!<br />';
}
$string_exp = "/^[a-zA-Z\p{Cyrillic}0-9\s\-]+$/u";
if(!preg_match($string_exp,$firstname)) {
$error_message .= 'The name is not valid.<br />';
}
if(!preg_match($string_exp,$lastname)) {
$error_message .= 'The last name is not valid.<br />';
}
if(strlen($description) < 2) {
$error_message .= 'The field for description is not valid.<br />';
}
if(strlen($error_message) > 0) {
died($error_message);
}
...
и форма HTML ниже
<div class="send-icon" data-toggle="modal" data-target="#contact-form">
<i class="fa fa-paper-plane"></i>
</div>
<p class="light-text">Contact Us</p>
<!-- Contact Form Modal -->
<div class="modal fade contact-form" id="contact-form" tabindex="-1" role="dialog" aria-labelledby="contact-form" aria-hidden="true">
<div class="modal-dialog modal-lg">
<div class="modal-content">
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
<div class="modal-body">
<!-- ***** Contact form ***** -->
<form class="form" name="contactform" action="contact/contact.php" method="post">
<div class="row">
<div class="form-group col-md-6">
<input type="text" class="form-control" id="firstname" name="firstname" placeholder="firstname">
</div>
<div class="form-group col-md-6">
<input type="text" class="form-control" id="lastname" name="lastname" placeholder="lastname">
</div>
<div class="form-group col-md-6">
<input type="email" class="form-control" id="email" name="email" placeholder="Email" >
</div>
<div class="form-group col-md-6">
<input type="text" class="form-control" id="phone" name="phone" placeholder="Phone" >
</div>
<div class="form-group col-md-12 mab-none">
<textarea rows="6" class="form-control" id="description" name="description" placeholder="description" ></textarea>
</div>
<div class="form-group col-md-12">
<button class="button bold-text main-bg" type="submit" ><i class="fa fa-paper-plane"></i></button>
</div>
</div>
</form>
Так снова простите мой вопрос, если это «слишком новичку» для вас, ребята, но я действительно нужна помощь здесь.
Если PHP-файл вызывается с javascript, нам нужно увидеть код этого файла javascript , – Wr1t3r
Нет .. это просто. Действие формы - это действие 'action =" contact/contact.php ". Нет javascript. – Select
Для этого лучше всего использовать Ajax. Там много скриптов. –