首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >即使设置了submit_registration_form_button,也将用户重定向到index.php

即使设置了submit_registration_form_button,也将用户重定向到index.php
EN

Stack Overflow用户
提问于 2019-04-21 23:43:38
回答 1查看 89关注 0票数 0

我正在为我的网站创建一个注册系统。当创建新帐户时,用户应该会看到一条消息,上面写着“成功创建了一个新帐户”,如果帐户不能创建,用户应该会看到一条消息,上面写着“无法创建新帐户”。

我这样做的目的是,如果用户没有在index.php上按下submit form按钮,而他们试图输入

websitename.com/verify_registration_form.php

在搜索栏中,它们被重定向至index.php

我的问题是,无论用户是否按下了submit form按钮,都会被重定向到index.php。

这是index.php上的注册表

代码语言:javascript
运行
复制
<form action="verify_registration_form.php" method="post">


<input type="username" id="user_name" name="user_name placeholder="Username" required>


<input type="password" id="user_pass_word" name="user_pass_word" placeholder="Password" required>


<input type="email" id="user_email" name="user_email" placeholder="Email" required>


<input type="submit" id="submit_registration_form_button" name="submit_registration_form_button" value="Sign Up">


</form>

下面是对我的verify_registration_form.php文件的表单验证

代码语言:javascript
运行
复制
<?php

session_start();

if(isset($_POST["submit_registration_form_button")) {

$connection = mysqli_connect("localhost", "root", "", 
"websiteusers");

if(!$connection) {

echo "Could not connect to MYSQL database";

}else{

$connection = mysqli_connect("localhost", "root", "", "websiteusers");
$username = mysqli_real_escape_string($connection, $_POST["user_name"]);
$userpassword = mysqli_real_escape_string($connection, $_POST["user_pass_word");
$hasheduserpassword = password_hash($password, PASSWORD_DEFAULT);
$useremail = mysqli_real_escape_string($connection, $_POST["user_email"]);
$sql = "SELECT UserName FROM websiteusers WHERE UserName='$username' OR UserEmail='$useremail'";
$result = mysqli_query($connection, $sql);
$user = mysqli_fetch_assoc($result);
$errors = array();

if($user) {

if($user["UserName"] === $username) {

array_push($errors, "That username is already taken. Please choose another one.");

}

if($user["UserEmail"] === $useremail) {

array_push($errors, "That email address is already taken. Please choose another email address.");

}

if(count($errors) == 0) {

$user_name = $username;
$user_pass_word = $hasheduserpassword;
$user_email = $useremail;

$query = "INSERT INTO websitusers (UserName, UserPassWord, UserEmail) 
VALUES ('$user_name', '$user_pass_word', '$user_email')";
$connection = mysqli_connect("localhost", "root", "", "websiteusers");

if(mysqli_query($connection, $query)) {

echo "Successfully created a new account";

$_SESSION['username'] = $user_name;
$_SESSION['success'] = "Registration was a success";

}else{

echo "Could not create a new account";

}

}

}


}


}else{

header("Location: index.php");

}

?>
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55784204

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档