2015-05-04 55 views
-2

這是我簡單的PHP程序:基本PHP程序拋出錯誤。在session_start()不能發送會話cookie

<HTML> 
<HEAD> 
<TITLE>Lookout World!</TITLE> 
</HEAD> 
<BODY> 
<?php 
    session_start(); 
    echo "Hello, world!"; 
?> 
</BODY> 
</HTML> 

當我運行通過Apache 2.4 Web服務器的PHP程序,它拋出這些錯誤:

警告:在session_start( ):無法發送會話cookie - 已在第8行的C:\ Apache24 \ htdocs \ Hello.php中發送(在C:\ Apache24 \ htdocs \ Hello.php:6中輸出)的頭文件

警告:session_start ):無法發送會話緩存限制器 - 已發送的頭文件(輸出已啓動在C:\ Apache24 \ htdocs \ Hello.php:6)在C:\ Apache24 \ htdocs \ Hello.php在線8 Hello,world!

奇怪的是,是,如果你只有這個:

<?php 
    session_start(); 
    echo "Hello, world!"; 
?> 

...該項目工程只是罰款那麼,有沒有錯誤。 但是,對於我正在處理的軟件,我們需要將PHP嵌入到HTML文件中。 (對於一個學校項目來說)。那麼,我該如何解決這些問題並擺脫這些錯誤。因爲在我們的學校項目中,它也提供了這些錯誤,我們無法登錄到我們的學校項目的PHP程序。

+1

您發佈作品的代碼。這是你尋找的答案不是它。您尚未發佈無法使用的代碼。我只能假設你在session_start()之前輸出了一些東西,這正是錯誤所說的你所做的......所以不要這樣做。 – braks

+0

對不起,男士,我在代碼中輸入的代碼由於某種原因沒有顯示出來...... – Erik343

回答

0

只需將您的session_start()調用移動到頂部即可。

<?php 
    session_start(); 
?> 
<HTML> 
<HEAD> 
<TITLE>Lookout World!</TITLE> 
</HEAD> 
<BODY> 
<?php 
    echo "Hello, world!"; 
?> 
</BODY> 
</HTML> 

注意:要使用基於Cookie的會話,在session_start()必須outputing什麼瀏覽器之前被稱爲 。

http://php.net/manual/en/function.session-start.php

相關問題