例如: 我在javascript中声明了url:
<script>
window.location.href = "signup.php#year=" + myyear;
</script>
在php中,我试图获得#year:
<?php
if(isset($_GET['year'])){
$year = $_GET['year'];
}
?>
提前谢谢你!
答案 0 :(得分:0)
简单来说我们使用?或/获取变量而不是#
答案 1 :(得分:0)
不使用#
符号
<script>
var myyear;
window.location.href = "signup.php?year=" + myyear;
</script>
你可以得到
<?php
if(isset($_GET['year'])){
$year = $_GET['year'];
}
?>
答案 2 :(得分:0)
实际上你只是遗漏了href
上的一件事。
window.location.href = "signup.php?year=" + myyear
此代码会以* signup.php?year = 2017
结果为url
<强>腓强>
您现在可以使用$_GET['year']
获取它。
答案 3 :(得分:0)
使用函数parse_url将url字符串转换为PHP url对象,并取消引用其&#34;片段&#34;像这样的关键:
$url=parse_url("www.example.com/example/?shareURL&adherentID=ascd#123");
echo $url["fragment"];
上面的代码返回123
。这里的工作示例 - http://codepad.org/r8icljcW
答案 4 :(得分:-1)
如果您想使用$_GET
,则应使用?
代替#
。的?符号是GET的指标,而不是#。
只需将您的网址结构更改为:
即可<script>
window.location.href = "signup.php?year=" + myyear;
</script>
然后,正如您所做的那样,使用GET获取值。
<?php
if(isset($_GET['year'])){
$year = $_GET['year'];
}
?>
如果要使用更多参数,请使用&
符号将它们分开。你可以添加任意多个,你只需要遵循`&amp; key1 = value1&amp; key2 = value2?结构,您可以根据需要扩展它。例如:
<script>
window.location.href = "signup.php?year=" + myyear&month=5;
</script>
现在你可以这样做:
<?php
if(isset($_GET['year'])){
$year = $_GET['year'];
$month = $_GET['month']; // Would assign 5 to month.
}
?>