[悲剧] PHP $_SESSION 在多个页面之间传递问题

作者:     目录:编程代码     发表:2011年04月27日

最近正在搞一个新的网站,晚上编写有关用户登录部分的代码,考虑到手机用户比较多,对 cookie 的支持不是很好,就采用了 PHP $_SESSION 方法来在各个页面之间传递数值,悲剧发生了。

错误代码截取

session_start(); 
$_session["user_login"] = $user_login;

你能发现上面的错误吗?在这个页面中输出 echo $_session[“user_login”]; 完全没有问题,但等我转到其他页面,再要取 $_session[“user_login”] 这个值的话,就取不到了。

我是费了九牛二虎之力啊,能用的方法都用了,配置文件 php.inc都被我改的面目全非了,但还是不起作用,2个多小时过去了,还是无解啊。

正当我一筹莫展的时候,突然灵感一现,他奶奶的,原来是$_SESSION大小写不对……,改成下面这样才可以。

session_start(); 
$_SESSION["user_login"] = $user_login;

我晕,撞死算了……

标签:

♥支付宝现金红包♥

支付宝现金红包,每天可领,红包金额最高 99元,使用无门槛,支付宝扫码付、还信用卡、充话费都可以使用。

支付宝红包领取方法:

  • 打开支付宝APP,首页搜索数字 1547638 即可领现金红包
  • 手机用户直接 点击这里领取
  • 或者支付宝APP扫描下面二维码领取
支付宝现金红包 每天可领

6 个评论

  1. Edison tsai says:

    😉 我是从TimesCode过来踩场的,看到你在留言,呵呵,其实你就是在使用Cookies来做传递中介,因为SESSION就是一个TTL为0的Cookies,简单来说就是服务器会PUSH一个Session_id到客户端,让客户端浏览器写到Cookies去,然后利用这个Hash key来跟服务器做通讯,换句话说,如果浏览器不支持Cookies,SESSION也将不能使用。 :mrgreen:

  2. 创意人 says:

    这样的悲剧经常发生啊,windows环境下做的好好的~传到Linux主机。。瞎米了。。结果就是大小写问题

  3. SMT接料钳 says:

    对于PHP,我还不是太熟悉哦

  4. 敖东 says:

    还好这么细微,你都发现了。

  5. 七七 says:

    呵呵,の也经常犯这样的错误..

发表评论

电子邮件地址不会被公开。 必填项已用*标注

This site uses Akismet to reduce spam. Learn how your comment data is processed.