免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 3107 | 回复: 10
打印 上一主题 下一主题

CGI::Session一问 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-10-27 10:32 |只看该作者 |倒序浏览
各位:
     现在有1.cgi和2.cgi两个cgi脚本,我了解用session可以通过param从2.cgi中获取1.cgi中表单变量值。
     但,1.cgi中构造的%hash,不知道在2.cgi中是否能直接使用(非表单变量)?
     如果能给范例学习就更好了   多谢!

论坛徽章:
0
2 [报告]
发表于 2010-10-27 10:42 |只看该作者
各位:
     现在有1.cgi和2.cgi两个cgi脚本,我了解用session可以通过param从2.cgi中获取1.cgi中表单变量 ...
mouse.rice 发表于 2010-10-27 10:32



    用不了。
用以用key=value&key2=value2的方式传给2.cgi呀。

论坛徽章:
0
3 [报告]
发表于 2010-10-27 10:46 |只看该作者
多谢神仙指点。我尝试下,先!

论坛徽章:
0
4 [报告]
发表于 2010-10-27 10:53 |只看该作者
回复 1# mouse.rice


    可以用呀,事实上CGI::Session设计得非常精致,可以直接把数据结构存进去及取出来。
  
   你在a.cgi及b.cgi只需要传送SessionID即可。

论坛徽章:
0
5 [报告]
发表于 2010-10-27 10:57 |只看该作者
楼上的兄弟,能否给段代码学习验证下?非表单变量也能获取么,仙子说获取不了。

论坛徽章:
0
6 [报告]
发表于 2010-10-27 11:10 |只看该作者
不知我是否准确地了解了你的意思,你是要在b.cgi和a.cgi间传递hash变量吧。
你可以把a.cgi在把hash保存在session中,在b.cgi中把hash直接取出来。

当然a.cgi和b.cgi是通过sessionid传递的。

论坛徽章:
0
7 [报告]
发表于 2010-10-27 11:12 |只看该作者
回复 5# mouse.rice


    所谓非表单变量当然是没有办法获取的。这是因为浏览器不会发送到服务器端去。


  但你的意思好象不是非标单变量获取的问题,而是两个脚本或者页面间共享数据的问题。

论坛徽章:
0
8 [报告]
发表于 2010-10-27 11:15 |只看该作者
$session->param(-name=>$name, -value=>$value)
$value = $session->param(-name=>$name);

以上代码中$value可以是标量,也可以是hash引用,不就解决了你的问题了。

论坛徽章:
0
9 [报告]
发表于 2010-10-27 11:37 |只看该作者
不要挑逗我,已经说明了非表单数据。不能传递

论坛徽章:
0
10 [报告]
发表于 2010-10-27 12:14 |只看该作者
非表单变量当然不能传送,这个不是perl决定的,是由HTML协议决定的。

但既然是非表单变量,你要由a.cgi送到客户端,修改后再送回来吗?这样是非常怪的。

如果在客户端不修改,就可以保存在session中,在b.cgi中直接读取。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP