[英]How do I keep data in forms during PHP error validation?
我有一個正在使用的用戶注冊頁面。 使用“注冊”按鈕提交表單后,它將使用POST將其發送到同一頁面,然后該頁面將處理輸入的數據,並使用IF語句進行搜索以查看其是否符合要求。
這是一個例子:
if (strlen($password) < 7)
echo ("<span class=error>Password must be at least 8 characters long.<br></span>");
我設置了它,如果遇到任何錯誤IF語句,該表單將停止處理並顯示錯誤。 我的問題是,一旦像這樣重新加載表單,數據就會從表單中消失。
我嘗試使用這樣的代碼將數據保留在表單中:
<td>First Name: </td>
<td width="55%"><input type='text' name='firstname' placeholder="First Name" value="<?PHP $_GET['firstname'] ?>" width="300px">
*</td>
但是,將值設置為POST信息似乎無效。 將數據保留在表單中的最佳方法是什么?
我尚未對此進行測試,但我認為這應該可行。
在您的代碼中,您忘記了回顯發布的變量。
假設表單已發布且有錯誤,您可以這樣操作:
<?php $firstname = htmlspecialchars($_POST['firstname']); ?>
<td>First Name: </td>
<td width="55%"><input type='text' name='firstname' placeholder="First Name" value="<?php if (isset($firstname)) { echo $firstname; }" width="300px">
*</td>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.