请问我这里注册成功之后为何填写信息表格还会存单而不是直接只输出‘注册成功!’呢?
(由于没有博客暂时无法上传图片)
以下为代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"/>
<title>注册</title>
</head>
<body>
<?php
/**
Function: 实现注册和登陆功能
/
// 防止报错,初始化用户输入变量
$userName = '';
$email = '';
$password = '';
$gender = '';
// 防止报错,初始化错误信息变量
$error1 = '';
$error2 = '';
$error3 = '';
$error4 = '';
$error5 = '';
// 该bool用于判断用户输入信息是否符合要求
$isEmpty = false;
// 该模块用于检测用户输入的注册信息是否都符合要求
if($_SERVER['REQUEST_METHOD']=="POST") {
$isEmpty=true;
// 检测用户昵称是否为空
if (empty($_POST['userName'])) {
$error1 = '请输入您的昵称';
$isEmpty = false;
} else {
$userName = trim($_POST['userName']); // 自动屏蔽用户名中的空格
}
// 检测用户邮箱是否为空
if (empty($_POST['email'])) {
$error2 = '请输入您的常用邮箱';
$isEmpty = false;
} else {
$email = trim($_POST['email']); // 自动屏蔽邮箱中的空格
}
// 检测用户性别是否输入正确
if (trim($_POST['gender'])=='男' | trim($_POST['gender'])=='女') {
$gender = trim($_POST['gender']); // 自动屏蔽性别中的空格
} else {
$error3 = '请正确输入您的性别(男或女)';
$isEmpty = false;
}
// 检测用户密码是否为空
if (empty($_POST['password'])) {
$error4 = '请输入您的密码';
$isEmpty = false;
} else {
$password = md5($_POST['password']); // 对用户密码进行md5不可逆加密
}
// 检测用户两次输入的密码是否一致
if ($_POST['password'] != $_POST['repassword']){
$error5 = '请确保您两次输入的密码一致';
$isEmpty = false;
} else {
$password = md5($_POST['password']);
}
}
// 该模块用于把用于输入的注册信息传输到数据库中
if($_SERVER['REQUEST_METHOD']=="POST" && $isEmpty==true) {
//引用数据库连接文件
include 'connection.php';
// 编写一句SQL将用户注册信息插入到数据库的表中
$sql = "INSERT INTO t_user (user_name
, email
, password
, gender
, register_time
) values ('$userName', '$email', '$password', '$gender', curdate())";
// 将数据输入到数据库中
if (mysqli_query($connect, $sql)) {
echo '注册成功!'; // echo '插入数据成功';
} else {
echo '插入数据失败';
}
}
?>
<form method='post' action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']); ?>">
用户昵称:<input type="text" name="userName"/>
<?php echo $error1;?><br>
常用邮箱:<input type="text" name="email"/>
<?php echo $error2;?><br>
用户性别:<input type="text" name="gender"/>
<?php echo $error3;?><br>
注册密码:<input type="text" name="password"/>
<?php echo $error4;?><br>
确认密码:<input type="text" name="repassword"/>
<?php echo $error5;?><br>
<input type="submit" value="注册"/>
</form>
</body>
</html>
没看懂但你既然数据插入成功,哪么你的返回值可能有问题,找到你处理返回结果处看下是否有修改返回值。
表述不清,不知道你想干啥......
有一个action属性看一下
后面加个退出就好了。 echo '注册成功!';exit;