1

这是我的代码的简化版本

<?php session_start();
    if($_GET['page'] == "login")
    {   // process username/password
        if(login is successful)
           $_SESSION['access'] = "dev";
    }
    else if($_GET['page'] == "request")
    {
        //get some data from an xml file using simplexml 
    }
?>
<?php if(!isset($_SESSION['access']) { ?>
    <!-- display login form. submits to this page + ?page=login -->
<?php } else { ?>
    <!-- display edit form, nothing more than a textarea, a select and a submit button. -->
    <!-- The form points to this page + ?page=request -->
<?php } ?>

当我登录 $_SESSION['access'] 设置正确时会发生什么,但是当我再次向页面提交数据以检索数据时,$_SESSION['access'] 被取消设置并且登录表单再次显示。

我究竟做错了什么?我对 PHP 相当陌生。

4

1 回答 1

1

您需要在会话中显式存储数据。session_start 打开会话以进行读/写,但是在您明确执行之前,所写的内容不会粘住。

http://www.php.net/manual/en/function.session-write-close.php

使用该功能。

于 2010-11-01T02:31:22.180 回答