每次我尝试显示错误消息“无法将用户添加到数据库”时,我都观看了有关如何使用PHP和MySQL制作注册表的教程。这是我的代码:
<?php
session_start();
$username = "";
$email = "";
$password = "";
$_SESSION['message']='';
$db = mysqli_connect('localhost', 'root', '', 'registration');
if($_SERVER['REQUEST_METHOD'] == 'POST'){
if($_POST['password'] == $_POST['confirm-password']){
$username = mysqli_real_escape_string($db, $_POST['username']);
$email = mysqli_real_escape_string($db, $_POST['email']);
$password = mysqli_real_escape_string($db, $_POST['password']);
$query = "INSERT INTO users (username, email, password)
VALUES('$username', '$email', '$password')";
mysqli_query($db, $query);
if($db->query($query) === true){
$_SESSION['message']="Registration succesful! Added $username to the datebase!";
header("location: welcome.php");
}
else {
$_SESSION['message'] = "User could not be added to the database!";
}
}
else {
$_SESSION['message'] = "Password did not match!";
}
}
?>
答案 0 :(得分:2)
尝试在您的else语句中放入$db->error
并查看其内容。.如果有错误或异常
if($db->query($query) === true){
$_SESSION['message']="Registration succesful! Added $username to the datebase!";
header("location: welcome.php");
}
else {
echo $db->error;
die();
$_SESSION['message'] = "User could not be added to the database!";
}
答案 1 :(得分:0)
使您的ID AUTO_INCREMENT
从每个表的1开始