我正在练习 PHP 和数据库创建,并且想根据输入错误更改我的消息。我不知道如何将更改后的消息传递回去,并且希望得到任何帮助。这是我的注册页面<main> <h1>Signup<h1> <h3> <?php echo $errorMsg; ?> <h3> <form action="includes/signup.inc.php" method="post"> <input type="text" name="uid" placeholder="Username"> <input type="text" name="mail" placeholder="E-mail"> <input type="password" name="pwd" placeholder="Password"> <input type="password" name="pwd_repeat" placeholder="Repeat Password"> <button type="submit" name="signup-submit">Submit</button> <form></main>这是我的处理页面if(isset($_POST['signup-submit'])){require 'dbh.inc.php';$Name = $_POST['uid'];$Email= $_POST['mail'];$Password = $_POST['pwd'];$PasswordRepeat = $_POST['pwd_repeat'];if(empty($Name) || empty($Email) || empty($Password) || empty($PasswordRepeat)){ header("Location: ../signup.php?error=emptyfields=1"); //Check if any field is empty exit();}else if(!filter_var($Email, FILTER_VALIDATE_EMAIL) && !preg_match("/^[a-zA-Z0-9]*$/", $Name)){ header("Location: ../signup.php?error=invalidamil&uid"); //Check if username and email is valid input exit();}else if(!filter_var($Email, FILTER_VALIDATE_EMAIL)){ header("Location: ../signup.php?error=invalidamil&uid=".$Name); //Check if email is valid input exit();}else if($Password !== $PasswordRepeat){ header("Location: ../signup.php?error=passwordCheck&uid=".$Name."&mail=".$Email); // Check if passwords don't match exit(); }$sql2 = "SELECT UserName FROM dbo.MainTable WHERE UserName = ?";$params2 = array($Name, SQLSRV_PARAM_IN);$stmt2 = sqlsrv_query($conn, $sql2, $params2);if($stmt2 === false){ die(print_r(sqlsrv_errors(), true)); exit();}我不确定在哪里放置更改消息变量,因为我无法让它在 if 语句中工作。
1 回答
胡子哥哥
TA贡献1825条经验 获得超6个赞
您将错误消息作为 url 参数提供,因此您可以使用php $_GET访问它
<h3>
<?php
echo $_GET['error'];
?>
<h3>
- 1 回答
- 0 关注
- 136 浏览
添加回答
举报
0/150
提交
取消