关于传递PHPSESSID值的问题!!~~~~~~~:(

孬毛毛 2002-04-15 12:54:08
有两个文件test1.php和test2.php

////////////test1.php/////////////
<?
session_start();
$id=session_id();
echo $id;
echo "<a href=test2.php>test2</a>";
?>

////////////test2.php///////////
<?
session_start();
$id=session_id();
echo $id;
?>

两次显示的id值相等!

当test1改成如下时,两次显示的id值不等!!!
////////////test1.php/////////////
<?
session_start();
$id=session_id();
echo $id;
echo "<form><input type=button value=test2 name=test2 onclick=window.open('test2.php'); ></form>";
?>


问:改变后怎样使两次显示的id值相同?
注:不可使用onclick=window.open('test2.php?PHPSESSID=$id')这样的方法来传递session的id值!
有不在浏览器上暴露PHPSESSID的方法来传递其值的吗?
...全文
187 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
Vitty 2002-04-16
  • 打赏
  • 举报
回复
To: naomaomao(孬毛毛)
你想用js调用也可以用post呀。
document.FormName.submit();
当然,用隐藏域的效果和在地址栏中显示出id值没有多大差别。
哈哈哈哈 2002-04-15
  • 打赏
  • 举报
回复
既然可以用SUBMIT表单调用另一窗口那么为什么非要用JS去调用另一窗口呢,gdxy(GBOY) 的这种方法不错的,用隐藏域传递变量,而且也另弹出窗口,满足了你的要求!!
孬毛毛 2002-04-15
  • 打赏
  • 举报
回复
to:gdxy(GBOY)
我知道这种方法啊!不过我必须要用js来调用另外一个窗口!不通过表单提交隐藏域,还有其他办法吗?
GDXY 2002-04-15
  • 打赏
  • 举报
回复
echo "<form method='post' target='_blank' action='test2.php'>";
echo "<input type='hidden' name='".session_name()."' value='.session_id().'>";
echo "<input type='submit' value='Click Me'>";
echo "</form>";
GDXY 2002-04-15
  • 打赏
  • 举报
回复
可以用post方式提交一个名字为PHPSESSID,值为$id的hidden变量,将form的target设置成"_blank",那个button改成submit按钮。
Vitty 2002-04-15
  • 打赏
  • 举报
回复
这种情况好象和ie的版本有关!
我一般直接用cookie记录记录数,然后查数据库,找到你原始的sessionid值。这种方法比较可靠吧。

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧