您的網址我知道$_GET["whatever"]
得到?whatever=*
獲得一個#出PHP
有沒有辦法讓#
變量出來的url:
www.*.com#imsomething
?在google上找不到任何結果。
您的網址我知道$_GET["whatever"]
得到?whatever=*
獲得一個#出PHP
有沒有辦法讓#
變量出來的url:
www.*.com#imsomething
?在google上找不到任何結果。
#之後的部分是URL的客戶端部分,它引用了HTML中的錨點。因此,您只能在此之前檢索所有內容。
客戶端在檢索文檔時不應該向服務器發送URI片段,也沒有本地應用程序的幫助,片段不會參與HTTP重定向。
〜維基百科:http://en.wikipedia.org/wiki/Fragment_identifier
您可以使用該Javascript代碼來獲得它的內容客戶端:
var hash = window.location.hash;
抓住它後,你當然可以將其發送到您的服務器端代碼使用jQuery的$ .ajax或類似的東西。
這會觸發301 ..還是ajax不知道該怎麼辦? 我不想使用JavaScript重定向402。 – Jimmyt1988
如果您使用類似$ .ajax或$ .get的東西,它會返回它被重定向到的頁面的內容 - 您的javascript所在的頁面將不會被重定向 – Jeroen
不,這對於服務器端語言來說是不可能的......您需要JavaScript來閱讀它。
這個的任何例子? – Jimmyt1988
@JamesT self.document.location.hash,self.document.location.hash.substring(1)如果你想要不帶散列的返回值。 –
@JamesT如果你真的想要在服務器端(PHP)處理哈希,你可以使用Ajax ... window.location.hash會在JavaScript中爲你提供哈希文本,你需要通過Ajax發送它到一個PHP頁面來處理它。 –
不,沒有,因爲這是從來沒有發送到服務器端。這是隻在瀏覽器上可見的東西。
你可以用javascript讀取它,然後提交給服務器端,如果你真的想,但通常它不會被髮送。使用JavaScript,您可以閱讀window.location.hash以獲取該值。
你想要#號消失後的位,或者你想讓它返回,以便你可以使用它的東西? –
不能。 '#'([片段標識符](http://en.wikipedia.org/wiki/Fragment_identifier))部分永遠不會被瀏覽器發送到服務器。 –