作者lastoct (lastoct)
看板Web_Design
标题Re: [问题] 想请问有关php和session的错误问题???
时间Sun Apr 17 19:19:56 2005
※ 引述《vivat (唷)》之铭言:
: Warning: session_start(): Cannot send session cache limiter -
: headers already sent
: 不知道为什麽 执行session都会出现这行警告讯息
: 我有爬过文,也设好session_save_path
: 可是还是都会出现这行讯息,session功能也能使用
: 请问这是什麽问题呢??????
: 谢谢
看讯息就是arzbar所说的问题,使用他的解决方案即可。
题外话:
官方手册是这麽说的:
Remember that header() must be called before any actual output is sent, either
by normal HTML tags, blank lines in a file, or from PHP. It is a very common e
rror to read code with include(), or require(), functions, or another file acce
ss function, and have spaces or empty lines that are output before header() is
called. The same problem exists when using a single PHP/HTML file.
大意是:
1.不可以有html tag 如<html><?php..
2.不可以有空白的行
如
<?php
some code
?>
<----空白行是不允许
<?php
3.不要加在include或require之前
php.ini可以设定sessoin_auto_start = 1(预设为0, disabled)
不过缺点是你的session就不能存物件了
如果还是不行,先丢一些code上来,还有平台,不然有点难猜测情况
如果解决了或发现什麽心得,最好可以回一下,帮助後面的同好。
也了解此方式是否work。
希望不要打了就跑了 XD
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 211.72.111.115
1F:→ lastoct:3.include/requrie不可在header()之前 211.72.111.115 04/17
2F:推 arzbar:还可以用一个方法试试看 所有程式一开头放 218.162.203.63 04/17
3F:→ arzbar:ob_start(); 结尾放ob_end_flush(); 218.162.203.63 04/17
4F:→ arzbar:session_start(); 也要放在include/require之前喔 218.162.203.63 04/17
5F:推 arzbar:题外话:可以试着了解"标头(header)",就可以知道 218.162.203.63 04/17
6F:→ arzbar:为什麽这些资料得放在最上头了... 218.162.203.63 04/17
7F:推 vivat:感谢各位解答,好像是因为空白行的关系 140.115.90.50 04/20
8F:→ vivat:不过後来不知道为什麽 就莫名其妙好了 我也不懂 XD 140.115.90.50 04/20