2013-04-01 43 views
0

我剛剛在PHP中開發了一個使用會話的項目。它在本地模式下工作正常,但是當我上傳到服務器時,它不起作用。那麼,它的工作效率爲50%,因爲當我通過POST發送它時,我可以正確地獲得整個會話,但是當我做header();到我的index.php,會話 只是desapeared。會話在本地模式下工作正常,但不在服務器中

  1. 會話在我的服務器中啓用。
  2. 所有文檔都有session_start();在頁面頂部。
  3. 當我做header();我設置死();下面。
  4. 語法無誤。沒有錯誤。

有誰知道發生了什麼?

+3

啓用error_reporting – swapnesh

+0

你得到的錯誤是什麼? –

+0

我沒有得到任何錯誤,這就是問題所在。我做print_r($ _ SESSION);到我的index.php,當我回到那裏時,在發送表單參數之後,數組仍然是空的,就像沒有發送參數。我只能得到PARAMS進入login.php,如果我做print_r(),我可以得到會議罰款。 –

回答

0

我認爲,問題是由於您的文件從本地移動到服務器時的錯誤而引發的。如果會話在服務器中不起作用,我們可以說它的服務器問題。但你說會議正在進行。所以請檢查你的編碼。如果它在本地主機上工作,那麼它也應該在服務器上工作。

試試這個: 在新的服務器上,PHP會話不工作。這臺服務器之前安裝了一個cpanel,我已經卸載它,沒有適當的方式卸載cPanel,所以我只是刪除所有相關的cron作業和cpanel文件夾。

要修復PHP會話問題,我檢查了設置爲/ tmp的session.save_path,檢查時發現它是隻讀的。

這可能是由於在卸載過程中禁用了cpanel的securetmp服務。我設置路徑爲

session.save_path = 「/var/tmp」 

在php.ini中重新啓動apache,會話開始工作。

我在下面的鏈接上面的成立:http://blog.hostonnet.com/session-not-working-in-php

其他posibilites: 會話或者沒有啓用或者沒有在服務器上的php.ini文件正確配置。

相關問題