數據庫行ID被綁定到的URL是這樣的:如何在頁面上加載一個隨機的PHP ID鏈接?
的頁面行2成爲 site.com/index.php?id=2
如果我手動刷新的index.php它顯示一個隨機記錄,但自然不會在地址欄中顯示記錄ID。
有沒有辦法讓鏈接顯示隨機記錄,同時在地址欄中顯示ID變化?
謝謝你的幫助!
數據庫行ID被綁定到的URL是這樣的:如何在頁面上加載一個隨機的PHP ID鏈接?
的頁面行2成爲 site.com/index.php?id=2
如果我手動刷新的index.php它顯示一個隨機記錄,但自然不會在地址欄中顯示記錄ID。
有沒有辦法讓鏈接顯示隨機記錄,同時在地址欄中顯示ID變化?
謝謝你的幫助!
不是隻顯示隨機記錄,而是選擇記錄的ID並重定向到顯示ID的版本。
$randomId = // whatever method you use to choose it
header("Location: http://site.com/index.php?id=$randomId");
試試這個:
$randomId = rand(0,100); // if let's say your post IDs go from 0 to 100
header("Location: http://www.yourdomain.com/post.php?id=$randomId");
有多種方法可以做到這一點。
你可以像Juhana說的,使用the header function。這將通過頁面重新加載將您重定向到另一個頁面。
通過使用window.history和jQuery for AJAX,您可以使用HTML5更改地址欄,而無需重新加載頁面。
最安全的選項是PHP標題功能。請記住,不要在標題之前打印/迴應任何內容。如果您仍然收到「標題已發送」,請使用ob_clean()
Juitina Kiitoksia。這很好(因爲隨機ID最終顯示在URL欄中),但是當我運行它並導致頁面無法加載時,它會導致重定向循環(310)。你知道如何解決這個問題嗎?謝謝! – karhu 2012-04-04 07:22:07
確保只在沒有指定id時使用重定向('!isset($ _GET ['id'])')。 – JJJ 2012-04-04 07:26:13
輝煌。現在正在工作。感謝您的幫助! – karhu 2012-04-04 07:37:05