discuz判断用户登录
当这整个执行下来既没有sid值又没有用户信息则表示该用户第一次登录或者cookie值已过期,则random(6)随机给6位数给$sid变量,然后 在common.inc.php程序大概300行左右有判断是否存在sid值并且没有cookie(‘sid‘)值时,用cookie存下sid值。这样 用户再次访问时就肯定存有sid值(除非已过期)。这样的话在sessions里就用这个用户,则记下来当前在线人数。
而同步登录的login函数中,则cookie(‘sid‘,‘‘,-84000*365)掉,其他的正常cookie,这个理解了很久。我的理解是:用 户既然不在discuz登录的,是在别的地方登录,则表明没有在论坛呆过(或者就这样强行的指定没有浏览过,不考虑以前浏览过,还有sid值。因为 updatesession函数会给15分钟未在线的用户的记录给删除了)或者说就强行让sid重新生成。重新插入一条新的记录到sessions表中 去。
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。