2011-09-29 51 views
0

我有一些表格,現在使用的實現如下所述:POST /重定向/ GET VS自定義實現

<form action="/formpost.php" method="post" name="form1" id="form1"> 
    <input type="hidden" name="to" id="to" value="__COMMENT1" /> 
    <!-- rest of form --> 
</form> 

__COMMENT1指的是我希望用戶表單發送後將被重定向的頁面。

差不多發生的事情是形式發佈到formpost.php,所述$_POST陣列被轉換爲$_SESSION['POST'],所述$_POST未設置,然後將用戶重定向到在隱藏的輸入字段的值引用的位置([ )然後,我可以繼續使用用戶的表單提交的值(參考從$_SESSION陣列),無論他們是否回去,刷新等。

是否有任何東西這個錯誤?
改爲使用POST/REDIRECT/GET模式有什麼好處嗎?

+0

在哪個頁面上顯示錶單驗證錯誤? –

+0

我重定向到的頁面。 ('__COMMENT1') – wanovak

+1

所以,你正在加載相同的表單。我在這方面看不出多少意義。我認爲最好只在一個地方有表格。只有在成功提交後才能重定向。 –

回答

0

你的方法沒有錯,它比PRG更方便。儘管如此,除非出現錯誤,否則我看不出保留POST變量的意義。 ,當然,沒有理由不設置$ _POST。

那麼,在一些解釋後,似乎你的設置是錯誤的。
對於所有表單以及不必要的重定向都沒有任何意義。

使表單動作成爲驗證表單的實際腳本。

  • 成功後,重定向到任何你想要的地方。
  • 上的錯誤:
    • 保存POST數據和錯誤消息爲會話和重定向到同一URL
    • 填寫表單,並取消POST數據和錯誤
    • 形式展現