我在html表单中使用此代码
<input name="button" type="button" value="Step 2" onclick="location.href='../ticket/scp/auto.php?dest=../scp/admin.php?t=staff&a=new'"/>
当我使用print_r($ _ GET)时,我得到了
Array ( [dest] => ../scp/admin.php?t=staff [a] => new )
而我希望得到
Array ( [dest] => ../scp/admin.php?t=staff&a=new )
我该如何解决这个问题
答案 0 :(得分:2)
您需要encode作为参数传递的URI,否则浏览器无法知道哪个部分属于哪个URI:
onclick="location.href='../ticket/scp/auto.php?dest=' + encodeURIComponent('../scp/admin.php?t=staff&a=new')"
您还可以在服务器端对URI进行编码。
答案 1 :(得分:0)
只需将&
替换为%26
即可。这样就是urlencoded“&amp;”字符,它将包含在值中,而不是作为传递的变量的分隔符。
答案 2 :(得分:0)
试试这个:
<input name="button" type="button" value="Step 2" onclick="location.href='../ticket/scp/auto.php?dest=<? echo urlencode('../scp/admin.php?t=staff&a=new')?>'"/>