我有一个在网址中发送变量的iframe。问题是我在url中发送了2个变量,当我回显第一个变量时,它还显示第二个变量的值:
PAGE1
<?php
$tid = $_SESSION['tid'];
$userid = $_SESSION['userid'];
echo "<IFRAME SRC='timer.php?tid=$tid?userid=$userid' WIDTH='500' HEIGHT='500' frameborder='0'></IFRAME>";
TIMER.PHP
session_start();
$tid = $_GET['tid'];
echo "tid:";
echo $tid;
输出:
tid:8?userid=999
输出应该只是tid:8 为什么?userid = 999
答案 0 :(得分:3)
网址应为timer.php?tid=$tid&userid=$userid
通知我已将第二个?
替换为&
。您使用?
将变量与URL的其余部分分开,使用&
将变量与其他变量分开。
答案 1 :(得分:2)
对于您正在执行错误的GET参数,对于每个新参数,应使用&
而不是?
进行拆分。问号应仅在文件名后使用。< / p>
错误:timer.php?tid=$tid?userid=$userid
右:timer.php?tid=$tid&userid=$userid
答案 2 :(得分:1)
尝试更换?与&amp ;:
tid=$tid&userid=$userid
答案 3 :(得分:1)
使用&amp;分离查询字符串变量。
<?php
$tid = $_SESSION['tid'];
$userid = $_SESSION['userid'];
echo "<IFRAME SRC='timer.php?tid=$tid&userid=$userid' WIDTH='500' HEIGHT='500' frameborder='0'></IFRAME>";
问号只标记查询字符串的开头。