Данные не записываются с формы в mysql
<html>
<title>form</title>
<h1>Registration form</h1>
<form action="form.php" method="POST">
<label for="name">name: </label>
<input type="name" id="name" name="name">
<label for="text">bio: </label>
<input type="text" id="text" name="text">
<label for="date">date: </label>
<input type="date" id="date" name="date">
<label for="email">email: </label>
<input type="email" id="email" name="email">
<label for="password">password: </label>
<input type="password" id="password" name="password">
<button>Send</button>
</form>
</html>
//php code starts
<?php
$mysql = new mysqli('localhost','root', 'root', 'testmysql');
$new_user = $_POST ["name"];
$new_text = $_POST ["text"];
$new_date = $_POST["date"];
$new_email = $_POST["email"];
$new_password = $_POST["password"];
if($mysql->connect_error){
echo "Error number: ".$mysql->connect_errno.'<br>';
echo "Error: ".$mysql->connect_error;
}
else {
echo "connection succesfull";
}
$mysql->query("INSERT INTO `for_test`(`name`, `bio`, `date`, `email`,`password`)VALUES('$new_user', '$new_text','$new_date', '$new_email', '$new_password')");
?>
Ответы (2 шт):
Автор решения: newman
→ Ссылка
В запросе пропущена запятая
$mysql->query("INSERT INTO `for_test`(`name`, `bio`, `date`, `email`,`password`)
VALUES('$new_user', '$new_text','$new_date' '$new_email', '$new_password')");
между '$new_date' и '$new_email'
Поэтому и рекомендется не писать в коде длинные строки - так сложнее находить в них ошибки.
Автор решения: Parzifal
→ Ссылка
РЕШЕНО,
html date input не совпадает (m-d-y) с mysql
нужно до внесение в базу данных изменить
пример:
$new_dob = date('y-m-d', strtotime($_POST["dateofbirth"]));