Re: [請益] headers already sent (關於php includ …
※ 引述《previa (Southern Cross)》之銘言:
: 小弟習慣寫網頁 在網頁下方回出現
: http://163.23.225.25/chimera/inc/footer.inc
: 這類的東西
: 之前都是在php最下面用內用require 這個inc都ok
: 不過最近用ut8寫 卻會出現
: Warning: session_start() .... headers already sent by
: 本來以為是vim會對inc加BOM標記引起的 可是後來發現又不是
: 然後又找到這篇 http://www.mail-archive.com/vim@vim.org/msg05618.html
: 似乎是如他所說 多重include的問題
: 我不知道大家有遇過類似的問題嗎?
: 有的話大家怎麼解決阿?? 或是如果要做出一樣的在底部一樣效果的
: 話?一般都怎麼寫阿 ?
: 目前不知道原因現在只好先用@了 = = ||
治本的方法:
檢查一下你的phpinfo()
找出這個值 output_buffering "On"
如果是off想辦法讓他on起來 更改apache設定 還是php.ini我忘了
接著在每次程式的最前面 前加上
ob_start();
例如加在index.php
以後你就永遠不必煩惱會動到http header的相關到底要放在程式的那邊了
因為全部的result會等你的程式跑玩才會response給browser
你的問題發生原因:
session_start() 因為要塞cookie(屬於http header的一部份)
所以在這個function之前不能有塞完header又echo(包含在<?php?>之外的和字元)
之後又有動到header的情況發生
詳細情形你可以用
wget -d http://任何網站
看一次你就了解了
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.166.207.124
推
09/10 16:50, , 1F
09/10 16:50, 1F
討論串 (同標題文章)
PHP 近期熱門文章
PTT數位生活區 即時熱門文章