我正在練習 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 關注
- 175 瀏覽
添加回答
舉報
0/150
提交
取消