关于session会话的问题 php

redenn 2012-11-11 03:35:48
今天看了关于session的视频。 那位老师说,当浏览器访问服务端的时候创建一次会话。 然后 php页面中session_start在服务器创建了一个

session_id,它把session_id以cookie的方式返回给浏览器。浏览器cookie带着这个id去访问其它的页面,从而能找到服务器端的这个id对应

的session文件,从而执行数据交流。

但,有一些问题不明白:

1.服务器把session_id传递给浏览器的cookie,这个cookie是不是在浏览器客户端的默认cookie文件夹里确实存在的呢,存在的时间又是多少

呢?

2.当我访问网站时如何能确确实实地得到 那个session_start为我准备的会话的session_id。和其中中的内容。


3. 通过这个session_id如何实现,curl模拟登陆呢?


希望各位好心的朋友,能为我解惑啊,或给我一些思路。
...全文
176 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
redenn 2012-11-11
  • 打赏
  • 举报
回复
引用 1 楼 xuzuning 的回复:
1、session_id 存在于浏览器搜使用的内存里,而不是对应的cookie文件中。因为session_id的生存时间是浏览器打开期间,而cookie文件是在浏览器关闭时才创建,用于保存尚未过期的cookie变量 2、session_start 后,你可以用 session_id 函数获取当前的 session_id,用 $_SESSION 数组管理 sessio……
1.session的生存时间不是1440秒(24分钟)么,而且浏览器禁用了cookie,则session_start()生成的session_id对于浏览器的操作都会无效。所以session_id不是与cookie有关么? 2.因为我是想访问别人的网站, 然后得到我访问中别人网站的session_start()产生的session_id,这怎么获得。 3.因为,许多网站都是以session做为身份验证,而我用cookie就无效了。所以想以session_id所对应的文件里的内容,作为模拟登陆的验证。
xuzuning 2012-11-11
  • 打赏
  • 举报
回复
1、session_id 存在于浏览器搜使用的内存里,而不是对应的cookie文件中。因为session_id的生存时间是浏览器打开期间,而cookie文件是在浏览器关闭时才创建,用于保存尚未过期的cookie变量 2、session_start 后,你可以用 session_id 函数获取当前的 session_id,用 $_SESSION 数组管理 session 变量 3、不是通过 session_id 模拟登陆,而是通过 cookie 模拟登陆 curl 提供了 CURLOPT_COOKIE 发送 cookie 变量 CURLOPT_COOKIEFILE 发送 cookie 文件 CURLOPT_COOKIEJAR 接收 cookie 到文件

21,886

社区成员

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

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