1.
Warning: Cannot send session cookie - headers already sent WarningWarning : Cannot send session cache limiter - headers already sent
分析與解決方法
:使用程序分析session_start()
時,之前已經有實際的html內容輸出了。或許你說,我沒有啊,我只不過是echo或
print一條訊息了。很抱歉,你的echo或print語句所產生的輸出,就是實際的html內容輸出。解決這類問題的方法是,將你的session_start()調到程式的第一行。 2. 錯誤提示 :opens
錯誤提示 :opensopens50500078(73:0375:037(3:00572F5:2098(3:00572F5:2097(cLvv] a39376b873f4daecf239891edc98b5, O_RDWR) failed
分析解決方法
:
出現這樣的錯誤語句一般是因為你的php.ini
中關於session.save_path 和session.cookie_path
設定置為session_save_path temp 然後在c: 目錄下建立一個temp目錄,即可
3.
3. Warning: Trying to destroy uninitialized session in
分析解決方法:
出類這樣的提示,一般情況都是你直接調
_de很多的朋友認為session_destroy()
函數可以獨立的運行,其實不然。解決的方法是在你調session_destroy()函數之前,要用
session_start()開啟session的函數。
4.問題: 最簡單的方法是: echo SID; ? session_id(
'0-2-c-d-e' );
session_start();_f 'yes';
echo SID;
?>
我的程序,在呼叫header函數之前沒有任何的輸出,雖然我include了一個
config.php.問題1同樣的錯誤呢,是不是因為我在
header之前用了session_start()? 答:或許你確實認真的檢查了你的php程序,在引用header()之前確實也沒有任何的輸出,並且在你的中也沒有任何的輸出!但是你是否用遊標鍵在?>這個PHP代碼結束語句後移動檢查呢?那你會發現在?>這個後面,有一個空行或幾個空格,你刪除了這幾個空行或空格,那麼問題就解決了。 註:此問題,會出 中,較高版本,沒有測試過。 6. :用它頁後登錄頁面session:用手? 答:最簡單的方法是 _ $login != true) { echo "你沒有登陸
exit; 7.問 我用session_register() session變量,可是當我用 或用一下 session所註冊的變數值。請問如何解決? [未測試成功] ? session_start(); $ok = 'love you'; session_register('ok'); :) next.php ); echo $ok; ?> 解決的方法: 當你用header 函數或window.location 函數或window.location
不過有解決的方法。如下圖所示 header("Location: next.php" ."?" . SID); id做為一個參數,傳到後一個頁面。 8.session如何傳數組 ); $data=array(1,2,3,4 ); 方法是先註冊後賦值 方式來存取session 回答:可以,你可以使用以下global數組來存取session
$ _SESSION : );
session_register('username');
echo $HTTP_SESSION_VARS['username']; echo $_SESSION['username' ]; ?>
請參考此例程修改符合您自己的程序。
問題10:session_unregister() 和 session_destroy(和 ?
session_unregister()函數主要作用是註消目前的一個session變數。不過要注意的是,如果你用$HTTP_SESSION_VARS或$_SESSION在當前頁面中引用session消session變數。 而session_destroy()
是清除目前的session環境。意思是說,當你用session_destroy()函數後,那麼你就不可能再用session_is_registered()來檢測session的變數了。但是要注意的是他不能清除global中的session或使用了session cookie的中的session cookie不要用$HTTP_SESSION_VARS $_SESSION來存取session.(譯自php.net)
if(isset($_COOKIE [session_name()])) {
session_start();
session_destroy()); )]);
}
?
session_start();
$_SESSION['is_admin'] =
'yes''no';
echo $_SESSION['is_admin'];
?>?>當描述
?>。 php.ini中,register_globals = On時,定義的變數會改變同名session。如果採用
session登陸,就會造成隨便登陸的問題。
以上就介紹了SESSION的坑,包括了方面的內容,希望對PHP教學有興趣的朋友有幫助。