2012-07-29 41 views
0

我有當前的URL爲: http://example.com/abcdef如何更新PHP中的URL?

當事件發生時(點擊提交按鈕等),當前的URL需要具有比「ABCDEF」以外的不同的值被更新。例如, http://example.com/xaxaxa

「xaxaxa」存儲在PHP中的變量(基本上來自mySQL)中。我知道如何「獲得」(使用$ _SERVER ['SCRIPT_NAME'])當前在PHP中的url,但任何人都可以告訴我如何「設置」一個。我不想實際重定向到另一個頁面(例如使用位置:..)。我只需要更新網址。

回答

3

無法使用運行在服務器端的PHP來完成。爲此使用JavaScript/HTML5。 見location.hashhistory.pushState

+0

你不能使用.htaccess RewriteEngine以某種方式/形式嗎? – DMor 2012-07-29 06:25:27

+0

但是,這仍然需要URL以某種方式改變,以觸發重寫規則。這是可能的只有服務器回發和OP是不是可以做到這一點''位置:...' – 2012-07-29 06:27:21

+0

你能夠給我一個JavaScript的例子..如果沒有,一個類似資源的鏈接也會很棒。謝謝。 – 2012-07-29 06:31:58

0

它可與.htaccess中進行路由的頁面得當,示例代碼;

RewriteEngine on

#Force redirect for 404 errors to /index.php

RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-f

RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-d

RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-l

RewriteRule ^/(.*)$ /index.php [L,QSA]

對於另一個問題,您需要更新鏈接以在URL中包含新位置。

+0

這仍然需要一個服務器-postback,或htaccess重寫規則不會踢入。 – 2012-07-29 06:31:55