我有一个表格的网址: - http://www.sboxeppp.com:88/phones.php?iden=true#6786
现在我想在服务器端检索数字(6786),然后是#。我怎么能这样做?
答案 0 :(得分:1)
哈希后面的任何内容只能由客户端脚本访问,因为它不会发送到服务器,您可以使用parse_url()函数
答案 1 :(得分:0)
你做不到。散列后的url部分称为fragment,并且不会将其发送到服务器。它仅适用于客户端脚本。
唯一可以做到这一点的方法是从JavaScript中检索片段(使用window.location.hash
)并使用专门为此目的而制作的AJAX请求将此信息传递给服务器。当然,这意味着服务器必须首先呈现页面并获得片段以后的的通知,这是一个完全不同于您想要的工作流程。
答案 2 :(得分:0)
你不能这样做,因为它只是一个浏览器的指令。您可以使用AJAX请求将所需信息发送到服务器。
答案 3 :(得分:0)
使用parse_url
:
parse_url('http://www.sboxeppp.com:88/phones.php?iden=true#6786',
PHP_URL_FRAGMENT);
请注意,如果片段位于表单的target
属性中,则不会将其发送到服务器。相反,只需将片段中的信息写入隐藏元素中,如下所示:
<input type="hidden" name="_fragment" value="6786" />
从$_POST['_fragment']
读取片段。
如果片段是在客户端生成的(或以某种方式由用户确定),则必须在客户端上创建该元素。您可以使用window.location.hash
在JavaScript中访问当前片段。
答案 4 :(得分:0)
是的,它没有让我发布这个答案 -
var hashNumber = window.location.hash
应该有用。
hashNumber = hashNumber.substring(1)
请参阅: