2013-05-31 26 views
0

我想創建一個註冊和登錄頁面。當嘗試將代碼上傳到我們的服務器時,它會創建兩個錯誤:我的PHP代碼發生錯誤(無法發送cookie緩存,會話緩存限制器)

警告:session_start()[function.session-start]:無法發送會話cookie - 已發送的頭文件(在/ Applications/XAMPP /第2行的/Applications/XAMPP/xamppfiles/htdocs/tisun_search/functions.php中的xamppfiles/htdocs/tisun_search/index.php:52)

警告:session_start()[function.session-start]:無法發送會話緩存限制器 - 已在第2行的/Applications/XAMPP/xamppfiles/htdocs/tisun_search/functions.php中發送(在/Applications/XAMPP/xamppfiles/htdocs/tisun_search/index.php:52處開始輸出)的標頭(第2行)

I已經嘗試檢查過在functions.php文件中存在問題,沒有空格或任何可見的錯誤。

我想知道是否有人會碰巧知道爲什麼會出現此錯誤可能發生的任何其他原因以及可能是解決此錯誤的解決方案。

下面是我的functions.php代碼(沒有php標籤)的開頭。

session_start(); 

function loggedin() 
{ 
if(isset($_SESSION['user_id']) && !empty($_SESSION['user_id'])) 
{ 
return true; 
    } 
    else 
    { 
    return false; 
    } 
} 

下面的代碼示出了其中錯誤發生

回答

0

修復唯一的方法,是通過所有步行包括並檢查它們是否要麼做一些輸出(回聲,printf的),或最常見的在一個純粹的包括(類等),你有空間和NL最終收盤後>:

.... 
} // end of class xyz 

/* 
* some comments 
*/ 
············¶ 
?>·················¶ 
¶ 
¶ 
¶ 
¶ 
<--- EOF 

NLS可能不是一個問題,但尾部的空格和NLS。一旦你使用Eclipse,你可以配置它自動刪除這些工件。

+0

嗯。錯誤消息告訴你輸出發生的位置(輸出開始於/Applications/XAMPP/xamppfiles/htdocs/tisun_search/index.php:52)(即文件/ Applications/XAMPP/xamppfiles/htdocs/tisun_search/index.php) –

+0

問題實際上是關於什麼時候發生session_start,它應該在被調用腳本的最開始,而不是在腳本執行的遠端包含文件中 –

相關問題