如何在PHP中使用Session和Include语句?

时间:2009-05-29 21:43:21

标签: php session logic

我有很多文件,包括一个到另一个,如下所示,

File1已包含在File2中,然后File2位于File3

现在我想从File1声明一个会话变量site_user_conutry然后我在File2上检查如果会话变量中没有任何值那么只有我包括File1.php

我已经在每个[年龄段添加了session_start();但仍然没有工作?

请告诉我如何在上述条件下开会。

4 个答案:

答案 0 :(得分:2)

在File2中

if ($_SESSION["site_user_country"] != null) 
{
    include_once(File3);
}

答案 1 :(得分:2)

在第一行代码中只执行一次session_start。

文件说: 从版本4.4.3开始,在会话已经启动时调用session_start()将导致级别E_NOTICE的错误。此外,第二个会话开始将被忽略

如果file1包含在file2中,则file2中的代码在file1之前完成。所以如果你声明file1中的某些东西可能在file2中看不到(取决于代码......),反正它不是现代的方式pf php编程。 (见oo和__autoload)

答案 2 :(得分:1)

您如何设置会话变量?你应该尝试这样设置:

$_SESSION['site_user_conutry'] = 'United-Kingdom';

您是否将session_start()放在文档的最顶部,或者至少在输出任何信息之前?

答案 3 :(得分:1)

假设您要包含具有代码执行功能的文件,而不是函数。

包含File1和设置会话变量的代码必须在第一次迭代时在File2上的代码之前执行。

在下一次迭代中,会话将为您保存值。

要设置会话变量,请使用$ _SESSION全局数组。


$_SESSION["name"] = "value";