2015-02-06 57 views
0

我有類似下面的代碼:爲什麼確認表單重新提交出現在這種情況下?

if(isset($_POST["send"])){ 

$error=0; 
//verify if there are any errors (like uncompleted fields) 
//if there are errors, $error=1 

if($error==0){ 
//do something then print "DONE"; 
} 
else if($error==1){ 
//SHOW FORM AGAIN 
} 
} 
else{//IF $_POST["send"] IS NOT SET 
//SHOW FORM: <form method="POST" action="<?php echo $_SERVER["PHP_SELF"]?>"> etc. 
} 

什麼情況是,當我提交表單沒有任何錯誤,我回去,沒有「確認重新提交表單」消息,但是,當提交的東西錯誤,然後我修改它,所以沒有錯誤,然後提交併返回,「確認表單重新提交」消息出現

爲什麼會發生這種情況?爲什麼兩種情況下都不一樣?

非常感謝!

回答

1

編輯你的代碼看起來像下面的代碼

<?php 
 
$error = 1; 
 
if(isset($_POST["send"])){ 
 

 
$error=0; 
 
//verify if there are any errors (like uncompleted fields) 
 
//if there are errors, $error=1 
 
} else{ //IF $_POST["send"] IS NOT SET 
 
    
 
//SHOW FORM: <form method="POST" action="<?php echo $_SERVER["PHP_SELF"]?>"> etc. 
 
} 
 

 
if($error==0){ 
 
//do something then print "DONE"; 
 
} 
 
elseif($error==1){ 
 
//SHOW FORM AGAIN 
 
} 
 

 
?>

但它不是一個很酷的代碼由於缺乏你的信息,你需要使用的if語句的第一個塊檢查if post is setthe variable $error用於檢查驗證。

+0

其實我用這個和頁面做同樣的事情。 – 2015-02-06 10:20:27

相關問題