[英]PHP: Why isset is not working
我是PHP的新手。 這是一個非常基本的問題。
兩種情況:
1.默認情況下,應顯示6月。
2.如果用戶單擊提交按鈕,則應顯示Jan。
simple.php(PHP + HTML)
PHP:
if(isset($_POST['submit']))
echo "Jan";
else
echo "June";
HTML:
<form method="post" action="simple.php" target='_self'>
<input type='submit' id ="submit" value='Submit' name="submit"/>
</form>
現在,當您單擊“提交”按鈕時,它顯示為六月。
請向我建議我要去哪里錯了。 請給我建議。
嘗試檢查:
if (!empty($_POST))
要么
if ($_SERVER['REQUEST_METHOD'] == 'POST')
我認為單擊一次提交按鈕后,您只按了f5即可再次提交表單,而不是刷新頁面。
只需選擇地址欄,然后按Enter,然后每次進行檢查。
即使更改了內容, F5
也會給您相同的頁面,因為它可能會從緩存中加載頁面。
Ctrl+F5
將導致瀏覽器丟棄緩存並向服務器請求新緩存,服務器可能會忽略無緩存頭,並為服務器端緩存的頁面提供服務。 因此,如果服務器忽略無緩存頭,則即使Ctrl + F5也會返回該頁面的舊版本。 請求標頭包含一些POST數據。 無論您做什么,重新加載頁面時,都會再次發送rquest。
簡單的解決方案是重定向到新的頁面(如果不相同)。 此模式在Web應用程序中非常常見,稱為Post / Redirect / Get。 所有表單都進行POST是很典型的,如果成功,則應該進行重定向。
請閱讀此以獲取更多信息GET / POST / REDIRECT
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.