例如,我有一個表單。根據表單的答案,我想在提交後將它們帶到我網站上的其他頁面。這裏假設表單的動作屬性被提交,這是我想要做的.php:在PHP中動態導航到頁面的最佳方式是什麼?
在submitted.php中,根據表單的回答完成腳本需要做的事情,然後指示它們通過在PHP中設置標題。
我在問這個問題,因爲我聽到很多人說你不應該使用標題反彈人們。
那麼什麼方式是最好的,如果不是我的解決方案,什麼是反對使用標題('location:');?
感謝
例如,我有一個表單。根據表單的答案,我想在提交後將它們帶到我網站上的其他頁面。這裏假設表單的動作屬性被提交,這是我想要做的.php:在PHP中動態導航到頁面的最佳方式是什麼?
在submitted.php中,根據表單的回答完成腳本需要做的事情,然後指示它們通過在PHP中設置標題。
我在問這個問題,因爲我聽到很多人說你不應該使用標題反彈人們。
那麼什麼方式是最好的,如果不是我的解決方案,什麼是反對使用標題('location:');?
感謝
發送位置標題正是你應該做的。沒有什麼錯在執行以下操作:
header('Location: http://www.site.com/?answer=' . rawurlencode($_POST['answer']));
除了輸入驗證,但是,是受另外一個討論的。
如果你'rawurlencode()'參數你不必關心輸入驗證。 –
如果您只想允許重定向到指定數量的url,該怎麼辦? – alexn
如果其中一個允許的值包含「&」或其他在URL中具有特殊含義的字符,該怎麼辦? –
我不知道對在PHP中使用header()
-redirects任何參數。只要確保你不會誇大並重定向到重定向到另一個重定向...
感謝您的清除。 好吧,所以現在已經解決了,我的$ _POST變量會與它一起出現,還是必須將它們放入會話變量或類似的東西? – Bender
同樣的事情在這裏,使用if(isset($ _ POST ['...']))在訪問它之前檢查一個變量是否存在。 – alexn