При нажатии кнопки "Сохранить" (тип button, не submit), выполняется проверка формы. Если все поля заполнены, данные формы должны отправляться в базу данных, иначе поля выделяются и появляется сообщение. Проверка выполняется правильно, но в базе данных ничего не появляется, хотя обращение к ней приходит, но но данные не сохраняются. В чем проблема?
registration.php
<form name="form" action="check_registration.php" method="post">
<input type="text" name="name" class="reg_form" id="name" placeholder="ФИО" /><br />
<input type="text" name="login" class="reg_form" id="login" placeholder="Логин" /><br />
<input type="password" name="password" class="reg_form" id="password" placeholder="Пароль" /><br />
<input type="text" name="dob" class="reg_form" id="dob" placeholder="Дата рождения" /><br />
<select name="region" class="reg_form" id="region">
<option disabled selected value="null">Регион</option>
<option value="MO">Московская область</option>
<option value="LO">Ленинградская область</option>
<option value="RT">Республика Татарстан</option>
</select><br />
<input type="text" name="telephone" class="reg_form" id="telephone" placeholder="Телефон" /><br />
<input type="email" name="email" class="reg_form" id="email" placeholder="Email" /><br />
<input type="button" name="save" class="reg_form" id="save" value="Сохранить" />
</form>
registration.js
$(document).ready(function() {
$("#save").on("click", function() {
let name = $("#name").val();
let login = $("#login").val();
let password = $("#password").val();
let dob = $("#dob").val();
let region = $("#region").val();
let telephone = $("#telephone").val();
let email = $("#email").val();
let counter = 0;
if (name == "" || name == " ") {
$("#name").css("border-color", "red");
counter++;
};
if (login == "" || login == " ") {
$("#login").css("border-color", "red");
counter++;
};
if (password == "" || password == " ") {
$("#password").css("border-color", "red");
counter++;
};
if (dob == "") {
$("#dob").css("border-color", "red");
counter++;
}
if (region == null) {
$("#region").css("border-color", "red");
counter++;
};
if (telephone == "" || telephone == "+7") {
$("#telephone").css("border-color", "red");
counter++;
};
if (email == "" || email == " ") {
$("#email").css("border-color", "red");
counter++;
};
if (counter == 0) {
$("form[name='form']").submit();
};
});
});
check_registration.php
<?php
$login = $_POST['login'];
$name = $_POST['name'];
$password = $_POST['password'];
$dob = $_POST['dob'];
$region = $_POST['region'];
$telephone = $_POST['telephone'];
$email = $_POST['email'];
$password = md5($password."usyvi462");
$mysql = new mysqli("localhost", "root", "root", "medixer");
$mysql->query("SET NAMES 'utf8'");
$mysql->query("INSERT INTO `users` (`login_user`, `name`, `password`, `dob`, `region`, `telephone`, `email`) VALUES('$login', '$name', '$password', '$dob', '$region', '$telephone', '$email')");
$mysql->close();
header("Location: index.php");
?>
*
Если есть предложения с кнопкой submit, а не button, пожалуйста, главное, чтобы работала проверка формы и в следствии нахождения ошибки, отправка формы отменялась. Но лучше тип кнопки не менять, если это не является основной ошибкой!
**
Я где-то читала, что .submit() может конфликтовать с method=""