用户
 找回密码
 入住 CI 中国社区
搜索
楼主: 仲夏
收起左侧

[已解决] 如何实现用户登录

  [复制链接]
 楼主| 发表于 2010-1-22 17:54:54 | 显示全部楼层
回复 10# Hex

我基础不扎实,如果session在浏览器关闭后不失效,会有什么问题吗?
我想实现自动登录,如果像你说的那样,用户第一次访问时先判断cookie,有的话之后就直接读session,但实际上应该怎么判断是否是第一次访问呢?
发表于 2010-1-22 20:13:35 | 显示全部楼层
楼主看过并且分析过一个完整的用户权限实例,一切都明白了

这么“说”是很难解决,最好通读实例
 楼主| 发表于 2010-1-22 20:37:37 | 显示全部楼层
回复 12# visvoy

没有…我稍微看了下open blog和easysns的判断登录部分,用的都是session,似乎并没有像之前说的首先用cookie判断之类的…= =
另外话说回来,每个页面都读cookie和每个页面都读session,在性能上有大差异吗?
发表于 2010-1-23 10:01:49 | 显示全部楼层
是不是第一次访问很简单,如果用户没登陆就检查 cookie,这就是所谓的第一次访问,如果用户已经登陆了就有 session 了,否则就一直检查是不是有 cookie。

PHP Session 关闭浏览器就失效,CI 的 Session 是 Cookie 实现的不是“真正的” Session。

希望楼主多多学习 PHP 基础知识。

PS: 读取 cookie/session 不存在性能问题吧,cookie 是浏览器主动发送给服务器的,不是经过复杂计算算出来的。
发表于 2010-1-23 10:04:52 | 显示全部楼层
楼上说的没错,参考一下。

cookie 不用每次都验证,用户第一次来先看 cookie,cookie 有就执行登陆操作, ...
Hex 发表于 2010-1-22 14:18


你说的是这个意思不?

如果检测到电脑上的cookies包含有正确的用户信息 就执行登陆
然后标记一个session
最后每次转到需要权限的页面只要看这个session就ok?
发表于 2010-1-23 10:08:36 | 显示全部楼层
楼上说的不错,基本上是这个过程,有 session 就看 session,没有就看 cookie,看到 cookie 后就马上用 cookie 进行正常登陆,这样就有 session 了。
发表于 2010-1-23 10:14:25 | 显示全部楼层
楼上说的不错,基本上是这个过程,有 session 就看 session,没有就看 cookie,看到 cookie 后就马上用 coo ...
Hex 发表于 2010-1-23 10:08



    正常登陆后就有session了?自动生成?如何判断他的存在?_SESSION['']这个索引值是什么
发表于 2010-1-23 11:04:54 | 显示全部楼层
怎么可能自动生成?是登录模块生成的,登录模块要自己写呀,CI没有登录模块
登录模块怎么写?Hex已经把原理都说了,不要再纠结了,认认真真看一遍CI blog源码,
什么疑问都解决了,按照别人的登录源码,自己写一个简单的登录页面,保证你全都懂了
发表于 2010-1-23 11:06:49 | 显示全部楼层
回复  visvoy

没有…我稍微看了下open blog和easysns的判断登录部分,用的都是session,似乎并没有像之前 ...
仲夏 发表于 2010-1-22 20:37
稍微看是没有任何意义的,看10遍还是什么都不会,
最好的办法是照着这个源码,自己写一个简单的例子
比在这里纸上谈兵强百倍
发表于 2010-1-23 11:10:17 | 显示全部楼层
正常登陆后就有session了?自动生成?如何判断他的存在?_SESSION['']这个索引值是什么 ...
hdusec 发表于 2010-1-23 10:14



    难道你登陆不写 Session 吗?-_-
那你怎么判断已经登陆了啊~ 如果你写过 ASP 这就很容易理解了,还是缺乏经验,赶快动手写个程序吧,不会没关系,就怕不动手。

本版积分规则