2012-04-04 63 views
0

數據庫行ID被綁定到的URL是這樣的:如何在頁面上加載一個隨機的PHP ID鏈接?

的頁面行2成爲 site.com/index.php?id=2

如果我手動刷新的index.php它顯示一個隨機記錄,但自然不會在地址欄中顯示記錄ID。

有沒有辦法讓鏈接顯示隨機記錄,同時在地址欄中顯示ID變化?

謝謝你的幫助!

回答

1

不是隻顯示隨機記錄,而是選擇記錄的ID並重定向到顯示ID的版本。

$randomId = // whatever method you use to choose it 
header("Location: http://site.com/index.php?id=$randomId"); 
+0

Juitina Kiitoksia。這很好(因爲隨機ID最終顯示在URL欄中),但是當我運行它並導致頁面無法加載時,它會導致重定向循環(310)。你知道如何解決這個問題嗎?謝謝! – karhu 2012-04-04 07:22:07

+1

確保只在沒有指定id時使用重定向('!isset($ _GET ['id'])')。 – JJJ 2012-04-04 07:26:13

+0

輝煌。現在正在工作。感謝您的幫助! – karhu 2012-04-04 07:37:05

1

試試這個:

$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"); 
1

有多種方法可以做到這一點。

你可以像Juhana說的,使用the header function。這將通過頁面重新加載將您重定向到另一個頁面。

通過使用window.historyjQuery for AJAX,您可以使用HTML5更改地址欄,而無需重新加載頁面。

最安全的選項是PHP標題功能。請記住,不要在標題之前打印/迴應任何內容。如果您仍然收到「標題已發送」,請使用ob_clean()

相關問題