我寫的是ajax,其中的php代碼有一句資料庫查詢語句
`
$sql = "SELECT * FROM user
WHERE name
=
'".$_SESSION['username']."'"; `
這裡面的 $_SESSION['username']
是我儲存的登入使用者的登入暱稱。本地測試是可以輸出的正常的,一到伺服器上就是NULL。
如果所有的 $_SESSION['username'] 都是空也就算了...只有幾處是空的,而且上下都沒有和他有關係的代碼。
我到底改如何調試這種問題?
是不是 $_SESSION 用多了的問題?但是我在檔案的起頭定義一個變數存這個,內容是有的。但是吧這個變數寫到下面去,有的地方還是Null
大家不要回答了,對不起是我傻逼了,本地我在php頁面沒有加session_start() 而在header.php加,是正常的。
伺服器上必須在php頁面加session_start(); 奇怪
回複內容:
我寫的是ajax,其中的php代碼有一句資料庫查詢語句
`
$sql = "SELECT * FROM user
WHERE name
=
'".$_SESSION['username']."'"; `
這裡面的 $_SESSION['username']
是我儲存的登入使用者的登入暱稱。本地測試是可以輸出的正常的,一到伺服器上就是NULL。
如果所有的 $_SESSION['username'] 都是空也就算了...只有幾處是空的,而且上下都沒有和他有關係的代碼。
我到底改如何調試這種問題?
是不是 $_SESSION 用多了的問題?但是我在檔案的起頭定義一個變數存這個,內容是有的。但是吧這個變數寫到下面去,有的地方還是Null
大家不要回答了,對不起是我傻逼了,本地我在php頁面沒有加session_start() 而在header.php加,是正常的。
伺服器上必須在php頁面加session_start(); 奇怪
session_start了嗎
開瀏覽器開發人員工具, 看瀏覽器傳了哪些cookie過去
再看一下php代碼得到的cookie是什麼 (遠端偵錯, 或者print_r)
如果cookie無問題但是session仍然不正常, 檢查session設定