我一直在尝试测试此签到表是否确实适用于学校项目,并且不断收到错误消息,指出存在意外的“;”。或'{',但我不知道我做错了什么。我非常感谢您的帮助。 :)
我尝试删除代码的特定部分,以查看是否只是问题所在,但是随后会出现新的错误,并出现类似的问题。我也尝试编辑错误部分附近的代码,但这似乎也不起作用。
<?php
if (isset($_POST['submit'])){
include_once'dbh.inc.php';
$first = mysqli_real_escape_string($conn, $_POST['first']);
$last = mysqli_real_escape_string($conn, $_POST['last']);
$email = mysqli_real_escape_string($conn, $_POST['email']);
$uid = mysqli_real_escape_string($conn, $_POST['uid']);
$pwd = mysqli_real_escape_string($conn, $_POST['pwd']);
//Error handlers
//Check if everything has been filled out
if (empty($first) || (empty($last) || (empty($email) || (empty($uid) ||
(empty($pwd))
{
}else{
//check if input characters are valid
if (!preg_match("/^[a-zA-Z]*$/", $first) || !preg_match("/^[a-
zA-Z]*$/", $last))
{
header("Location: ../signup.php");
exit();
}else{
//check if email is valid
if (!filter_var($email, FILTER_VALIDATE_EMAIL)){
header("Location: ../signup.php");
exit();
}else{
$sql = "SELECT * FROM users WHERE user_uid ='$uid'";
$result = mysqli_query($conn, $sql);
$resultCheck = mysqli_num_rows($result);
if ($resultCheck > 0){
header("Location: ../signup.php");
exit();
}else{
//Hashing the password
$hashedPwd = password_hash($pwd, PASSWORD_DEFAULT);
//Insert the user into the database
$sql = "INSERT INTO users (user_first, user_last,
user_email, user_uid, user_pwd) VALUES ('$first', '$last', '$email',
'$uid', '$hashedPwd');";
$result = mysqli_query($conn, $sql);
header("Location: ../signup.php");
exit();
}
}
}
}
}else{
header("Location: ../signup.php");
exit();
}
预期结果是注册表可以正常工作并显示在数据库中,而没有任何语法错误。