作者HuangJC (吹笛牧童)
看板PHP
标题Re: [请益] 请问session的SID
时间Wed Jul 23 01:56:48 2008
: → xam :你应该要先读一下cookie跟session的介绍.. 07/22 23:43
: → weiyucsie :推楼上XD 07/23 00:31
cookie 我知道有存活时间
但不知道程式在哪里 setcookie (全域搜寻漏掉)
而 session 如果是指 phpbb 的 session 介绍,那才有差
虽然我在这边一直用这字眼
但这不是 php 那组 session ,
phpbb 是自己维护 session
;;
看到这里才明白有人说只要掌握 session_begin 等几个函式
而没有去找寻 login 的 API
因为至少有两个地方在写 login,而 session_begin 这一个是我要的
login by ID,而不是 login by Name
所以只要呼叫它,给它 ID,它就一路登入
至於其内还有另一组 autologin 的检查密码
那是要稍微改写把它跳掉的
;;
php 的 session 我还有几个问题
不过还没空 POST
基本上它的档名及内容都是可控制的
所以如果有订做 session handler 的需求才能合并两个程式的话
的确是做得到
但全域变数对冲我还是解不了
总不成像我以前学八位元 basic 时,自己控制变数,就这样写:
A1=A; //全域变数 A 将被破坏,先保存起来
gosub function F1;
A=A1; //还原
这像什麽?这让我想到组合语言里,有限的 CPU 暂存器
活得好辛苦 *_*
如果我在 cake 呼叫 phpbb,即将破坏 userdata 这个变数
於是我保存它再还原
那我会怀疑,难道没有包起来让它变 local 的语言设计
不过反正所有变数都活不过一页
session 虽然造出了全域变数的假象,但主管不愿承认,要求改掉这字眼
基本上每一页开头 parsing 时,它必需重载入;它是遗忘再被重载入
所以和一个程式一直 run,被记忆着的观念不同
每一页网页都是单独的
已经是一个程式执行完,又执行另一个程式并重载入变数了
既然所有变数都活不久..那破坏就破坏 :P
(不,如果它存进 session 就会久;应该说没存入的不必在乎它的死活)
还没找到很好的想法..
不过想想,AX,BX,CX,DX 等暂存器在高阶语言里也是任意破坏它
想用时其值正确即可
这样 code 才有法子被任意 link 而不用兼顾前後文
(写程式最怕的,指令写成前後相依性;合在一起都会动,拆开对调都是 BUG)
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.219.65.16
1F:→ bibo9901 :哪来的 session_begin 函式 07/23 11:45
2F:→ HuangJC :在 phpbb2/session.php,是 user define function 07/23 13:07