当前位置: 首页 > 知识库问答 >
问题:

有关session_start()开始登录,但不工作在其他页面

卓雅达
2023-03-14

我是PHP的新用户。我在一些PHP上工作project.want一些关于PHP会话的帮助。我有login.html页面的形式动作执行login.js.登录时执行,用户名和密码已请求urllogin.php页面检查用户名

我的注销页面包含带有此php代码的html代码,并重新定位到登录。html页面。

共有3个答案

段干高歌
2023-03-14

在会话开始和销毁下面的链接中检查此相关答案

这与上面链接中的内容相同。

您所要做的就是为登录创建一个会话。所以这里是诀窍。每次从索引移动到主页时,都应该检查登录会话是否存在。如果没有,请要求用户登录。

检查用户是否已登录

<?PHP
    session_start();

    if (!(isset($_SESSION['login']) && $_SESSION['login'] != '')) {

        header ("Location: login.php");
    }
?>

同样,我们首先开始一个PHP会话。接下来的IF声明相当复杂。但是我们要测试两件事情:是否设置了名为登录的用户会话?这个会话是一个空字符串吗?

!(isset($_SESSION['login']) && $_SESSION['login'] != '')

第一部分是:

!(isset($_SESSION['login'])

要检查会话是否已设置,可以使用内置函数isset。我们使用的是NOT操作符。(NOT运算符是感叹号。)所以我们说,“如果会话未设置”。会话可能已设置,但其中可能包含“1”。我们还需要检查名为login的会话是否为非空字符串。如果这两件事都失败了,那么我们可以重定向到登录。php页面,因为这意味着用户未登录。

对于站点中的每个页面,如果页面顶部有上述脚本,则如果用户未登录,它将重定向用户。这样,您就可以保护页面不受非成员的攻击。如果他们登录,他们将能够查看该页面。

注销如果您查看logout.php的代码,您将看到以下内容:

<?PHP
    session_start();
    session_destroy();
?>

这就是注销用户所需的全部内容:启动会话,然后发出session\u destroy命令。您所需要的只是从站点上的任何位置指向此页面的链接。该链接类似于您的HTML:

<A HREF = logout.php>Log Out</A>

当用户单击此链接时,他们将被带到带有破坏会话的代码的页面。

我希望这有帮助。

弘志勇
2023-03-14

在要访问会话变量的每个页面上,都需要添加到页面会话_start()的顶部;

东门奕
2023-03-14

在使用会话之前,必须先启动会话。

  session_start();
 类似资料:
  • 我有一个程序,用来接受用户的图像。我改为接受PDF文件,而不是我们的客户要求的问题是它不工作。 我已经换了哑剧。php配置到这个 这是我保存上传文件的CI代码 HTML 滑动分页 编辑:jquery报告该文件已成功上载,因为它返回JSON,但每当我检查目录时,都没有任何内容。奇怪的是,我将文件扩展名重命名为。TXT并上传了一个3.5MB的pdf文件。txt扩展名,它已成功上载并位于正确的目录中。

  • 我正在Java创建一个管理系统。 我有这个登录表。与数据库的连接看起来很好,因为它没有给出错误。 但是当我尝试执行try{}和catch{}时,它给出了一个错误。 我希望有谁能帮助我。 它总是给出: catch(Exception ex){JoptionPane.ShowMessageDialog(null,“登录操作错误”,“登录错误”,JoptionPane.Error_Message);}

  • 问题内容: 我有2页:和。我只有在先登录后才能访问。如果不经过其他访问,我只是通过浏览器拒绝访问(没有重定向到登录)。在登录后,我就可以访问另一个。 我的问题是使用curl命令执行此操作。我可以成功使用curl 登录,但是尝试访问后会被拒绝。 我使用以下内容: 我尝试将第二行与&一起使用,但没有用户/密码部分,但仍然无法正常工作。两个页面都使用相同的CA,所以这不是问题。有什么建议么?谢谢 问题答

  • 我正在使用selenium在我的C#应用程序中自动登录。然而,我尝试登录的页面具有某种验证码或机器人检测技术,即使这些凭据是正确的,也会导致“不正确的凭据”。手动登录使用相同的凭据。 我尝试过的事情: 为chromeOptions设置用户代理和用户数据目录。 添加了排除参数的启用自动化禁用的信息栏的Chrome是由自动化软件控制 在无头模式下尝试了Chrome、FireFox和IE。 在登录代码中

  • 我得到了一个登录表单,提交后,但似乎不自动认证,我可以看到匿名在分析器,即使我登录为管理员。 我正在从数据库中获取数据: 当然,数据库中存储的密码是加密的。 security.yml(app/config/security.yml) SecurityController.php(src/AppBundle/Controller) User.php(src/AppBundle/Entity/User

  • 我无法使我的pdf与Adobe Reader DC联机工作。 http://www.okeechobeecountytaxcollector.com/documents/feecalculatorrev0909.pdf 所有按钮或功能都不工作。(就像当你点击机动车辆、移动房屋或上面的任何一个按钮时,应该会出现一个下拉选项)但如果我在任何其他阅读器中打开,它都能正常工作。有没有人知道我怎样才能编辑文