session_start();
include_once("./include/config.php");
include_once("./include/mysql_class.php");
if(!isset($_SESSION['admin'])){
$smarty ->display("admin/login.html");
exit;
}else{
$smarty ->assign("admin",$_SESSION[admin]);
}
.....这是我后台的global。php文件。
后台有个功能需要添加很多东西,每次添加一个记录的时间都要很长,至少20分钟吧,但是当添加完,点提交的时候,却已经被自动注销了session了,我后面的页面中并没有注销session的代码,按理说,当关闭页面的时候才会自动注销掉session,我想不通是怎样被注销的,是不是和php。ini文件有关呢?(我每个php页面都include了global。php页面的)
恳请高手解疑,谢谢

解决方案 »

  1.   

    SESSION 的有效期一般默认设置为 20 分钟
      

  2.   

    两个建议
    1.修改php.ini文件
    2.结合cookie使用
      

  3.   

    session时间到了,可以修改php.ini 也可以用ini_set
      

  4.   

    我看了下php。ini里的默认设置,是1440,也就是24分钟,我就测试了下,把1440改成60秒,那么,就应该在一分钟之后自动注销session id了,但是,三分钟后,我刷新,仍然是登陆状态。所以,我又觉得不是php。ini配置里的原因。头都大了。php程序里我并没有设置session自动注销时间,也没用用到cookie。
      

  5.   


    是php.ini没错的,它的默认24分钟指的是你无任何操作时的状态,另,你在本地及在服务器是不一样的,本地有着更高的信任度,你尝试把你现在的60s配置上传到服务器上看看