2011-12-29 47 views

回答

1

服務器端和客戶端的答案都是肯定的。

服務器端,您的網址將需要不同的結構比你有,例如:

http://website.com/page?id=1 

...或REST風格的路由

http://website.com/page/1 

後者可以實現像Apache的mod_rewrite

要訪問您的PHP代碼中的id值,您需要$_GET['id'],並對其進行適當的處​​理。

客戶端,你需要使用JavaScript使用location.hashlocation.href來做到這一點。 GitHub可以通過導航哈希來達到很好的效果。

0

URL的哈希部分沒有被傳遞給服務器,您需要使用例如。 JavaScript來做到這一點。

在URL中的JavaScript「哈希」部分可這樣的:

var hash_part = window.location.hash; 

,並得到它後,可以例如:

  • 它傳遞給由AJAX調用服務器,
  • 重定向將散列傳遞給服務器的頁面,例如。這樣的:

    window.location = '/check_hash.php?hash=' + hash_part.split('#')[1] 
    
  • 或做一些事情,而無需調用服務器:

    alert('My hash is "' + hash_part + '", no need to call the server!'); 
    

有沒有幫助?

0

如果你想使用PHP,你可以如在URL提供參數:

website.com/page.php?do=something 

website.com/page.php?do=somethingelse 

所以,你應該用一個問號傳遞參數給PHP而比在問題中使用hashtag要好。

在你的PHP代碼是根據它的價值,你就可以獲取該參數,並做一些事情:

<?php 

$param = $_GET['do']; 

if ($param == "something") { 
    //Do something... 
} 
else if ($param == "somethingelse") { 
    //Do something else... 
} 

?> 
0

if($_GET["id"] == "test"){ 
    do your stuff 
} 

例如讀它。如果客戶端,那麼你就需要使用JavaScript。例如

<script> 
    if (location.hash == 'id1') { 
     alert('page1!'); 
    } 
    else if (location.hash == 'id2') { 
     alert('page2!'); 
    } 
</script> 
相關問題