这个问题把我难住了。即使当我在 phpmyadmin 中检查数据库时,查询已成功插入到数据库中,我也会收到此错误。所以我知道查询通过并且不是错误的。我想要做的是注册一个用户,如果有结果返回 - 返回它以检查真或假,即如果结果存在然后继续。我班上的代码;
class registerUser {
function register($email,$password) {
$query = "insert into users(email,password) values('".$email."','".$password."')";
$result = mysql_query($query) or die("Could not enter the user into the database".mysql_error());
return mysql_affected_rows($result);
}
function checkPasswords($password1,$password2) {
if($password1 == $password2) {
return true;
}
else {
return false;
}
}
}
使用该类的文件:
include('../data/connection.php');
include('../data/registerUser.php');
$connect = new connection();
$connect->connect($con, $db);
$register = new registerUser();
$checkPass = $register->checkPasswords($_POST['regpass'],$_POST['confirm']);
if($checkPass) {
$reg = $register->register($_POST['regemail'],$_POST['regpass']);
if($reg) {
session_start();
$_SESSION['id'] = $_POST['email'];
$connect->close($con);
header("Location:dashboard.php");
} else {
// Failure - message
echo "Registration not successful, contact Administrator";
}
} else {
echo "Passwords do not match";
}
似乎它永远不会通过 registerUser 中的注册函数并在 mysql_query 中执行 die 消息,但是在 phpMyAdmin 中检查时插入成功。我究竟做错了什么?非常感谢任何帮助!