码迷,mamicode.com
首页 > Web开发 > 详细

php常见问题

时间:2016-01-10 16:56:57      阅读:175      评论:0      收藏:0      [点我收藏+]

标签:

 1. 如果没有开启cookies,session如何工作?

 PHP中的sessions通常会使用cookies的方法。但是如果没有cookies(浏览器禁用cookies),PHP sessions也可以工作。

 

 没有cookies,php会做两件事:

  1. 找到在页面中的所有form表单,PHP在form表单中自动添加隐藏域(name="PHPSESSID"),这个隐藏域的值就是PHP分配给你的session ID,例如:  
1 <form>
2     <input type="hidden" name="PHPSESSID" value="12345678" >
3 </form>

 

 当form表单提交到服务器时,PHP能够获得session ID,将能够知道客户端是谁。

 

    2. PHP将会找到在你页面中的所有links,修改这些links,以至于有一个参数添加到links中,这个参数的名字是PHPSESSID,它的值就是session ID。例如:

如果你的代码中有一个link:

1 <a href="http://www.example.com">Go to this link><a/>

 

 当被PHP修改后,将会变成下面的样子:

1 <a href="http://www.example.com?PHPSESSID=72aa95axyz6cd67d82ba0f809277326dd">Go to this link</>

 

 

PHPSESSID的名字可以被修改,它主要用来握着PHP session的值。如果你想要修改这个名字,你可以修改php.ini的session.name的值。

 

 如果没有开启cookies,使用的PHP sessions的缺点是什么?

如果你想要分享一个伴随着PHP session的link给其他人,他们就可以使用你使用的session ID。

php常见问题

标签:

原文地址:http://www.cnblogs.com/yandufeng/p/5118691.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!