我有multple許多文件包括一個到另一個像下面,如何在PHP中使用Session和Include語句?
File1
包括在File2
然後File2
正在File3
現在我想從File1中定義一個session變量site_user_conutry
然後我檢查File2,如果在會話變量中沒有任何值,那麼只有我包括File1.php
我在每個[年齡但仍然不工作?]中添加了session_start();
?
請告訴我如何讓會議在上述條件下工作。
我有multple許多文件包括一個到另一個像下面,如何在PHP中使用Session和Include語句?
File1
包括在File2
然後File2
正在File3
現在我想從File1中定義一個session變量site_user_conutry
然後我檢查File2,如果在會話變量中沒有任何值,那麼只有我包括File1.php
我在每個[年齡但仍然不工作?]中添加了session_start();
?
請告訴我如何讓會議在上述條件下工作。
你是如何設置會話變量?你應該嘗試設置它像這樣:
$_SESSION['site_user_conutry'] = 'United-Kingdom';
你放置在session_start()在文檔的最頂端,或者至少你輸出之前的任何信息?
在文件2
if ($_SESSION["site_user_country"] != null)
{
include_once(File3);
}
假設您包含具有代碼執行的文件,而不是函數。
包含File1並設置會話變量的代碼必須在第一次迭代時在File2上的代碼之前執行。
在接下來的迭代中,會話將爲您保存值。
要設置會話變量,請使用$ _SESSION全局數組。
$_SESSION["name"] = "value";
只在第一行代碼中執行session_start一次。
文檔說明: 從版本4.4.3開始,在會話已經啓動時調用session_start()會導致E_NOTICE級別的錯誤。另外,第二場會議開始將簡單地忽略。
如果file1包含在file2中file2中的代碼在file1之前完成。所以,如果你在file1中聲明的東西可能不會在file2中看到(取決於代碼...),反正它不是現代化的PHP編程方式。 (請參閱oo和__autoload)
是的,我按照您演示的方式宣佈了會話。並且我在每個頁面的頂部添加session_start()。 – Prashant 2009-05-31 07:08:25