作者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