我正在爲我的html值進行PHP驗證。但是,當PHP驗證 失敗並且我返回頁面時,表單數據將被清除。反正用PHP做什麼保存和PHP重新加載表格數據php - 驗證後爲什麼我的表單數據得到清除
驗證碼
<?php
$firstname=$lastname=$contactno="";
$firstnameErr=$lastnameErr=$contactnoErr="";
if ($_SERVER['REQUEST_METHOD']== "POST") {
$valid = true;
/*FirstName Validation starts here*/
if(empty($_POST["fname"]))
{
$firstnameErr="*firstname is Required";
$valid=false;
}
else
{
$firstname=test_input($_POST["fname"]);
if (!preg_match("/^[a-zA-Z ]*$/",$firstname))
{
$firstnameErr = " Only letters and white space allowed";
$valid=false;
}
}
/*FirstName Validation Ends here*/
/*lastName Validation starts here*/
if(empty($_POST["lname"]))
{
$lastnameErr="*lastname is required";
$valid=false;
}
else
{
$lastname=test_input($_POST["lname"]);
if(!preg_match("/^[a-zA-Z ]*$/",$lastname))
{
$lastnameErr = " Only letters and white space allowed";
$valid=false;
}
}
/*LastName Validation Ends here*/
/*Contact No Validation starts here*/
if(empty($_POST["contact"]))
{
$contactnoErr="*Contact No. is required";
$valid=false;
}
else
{
$contactno=test_input($_POST["contact"]);
if(!preg_match("/^(\d[\s-]?)?[\(\[\s-]{0,2}?\d{3}[\)\]\s-]{0,2}?\d{3}[\s-]?\d{4}$/i",$contactno))
{
$contactnoErr="*Enter a valid contact no";
$valid=false;
}
}
/*Contact No Validation Ends here*/
//if valid then redirect
if($valid){
include 'database.php';
echo '<META HTTP-EQUIV="Refresh" Content="0; URL=success.php">';
exit;
}
}
function test_input($data)
{
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}
?>
形式
<form method="post" action="<?php htmlspecialchars($_SERVER["PHP_SELF"]);?>">
<label>Firstname<span class="error">*</span>:</label>
<input type="text" name="fname"/>
<span class="error"><?php echo $firstnameErr?></span><br />
<br />
<label>lastname<span class="error">*</span>:</label>
<input type="text" name="lname"/>
<span class="error"><?php echo $lastnameErr?></span><br />
<br />
<label>contactno<span class="error">*</span>:</label>
<input type="text" name="contact"/>
<span class="error"><?php echo $contactnoErr?></span>
<br />
<input style="margin:20px 20px 20px 250px;" type="submit" name="Submit" value="Submit"/>
</form>
'' - 您的輸入字段在加載頁面時總是空的。 –