gpt4 book ai didi

mysql - 与 php 中的 session_start() 有关

转载 作者:行者123 更新时间:2023-11-30 22:51:39 25 4
gpt4 key购买 nike

我是 PHP 的新用户。我正在处理一些 php 项目。需要一些有关 php session 的帮助。我有 login.html 页面,该页面对 login.js 执行表单操作。执行登录时,用户名和密码已将 url 请求到 login.php 页面以检查 mysql 数据库表中的用户名和密码并启动 session_start() 并将 $_SESSION 设置为用户名和密码。如果为真,则重新定位到带有 session 的 home.php 页面。但我的 home.php 页面内容 html 代码与此 php 代码

    <?php
if(!isset($_SESSION["USER"])) {
include ('../content/logout.php');
exit();
}
?>

我已经在 login.php 上启动了 sessio_start()。我已经检查了 print_r($_SESSION);因为 session 已经开始了。但它的开始。当我重新定位到 home.php 时,它不起作用。我在 home.php 上将它检查到 print_r 但它没有显示。我附上了用 home.php 编写的 php 代码。它告诉我错误[客户端 127.0.0.1:53005] PHP 警告:session_destroy():试图销毁 logout.php 中未初始化的 session ......

我的注销页面包含带有此 php 代码的 html 代码

 <?php
session_destroy();
session_unset();
?>

并重新定位到 login.html 页面。

最佳答案

您必须重新开始 session 。必须出现在每一页上。

<?php
session_start();
if(!isset($_SESSION["USER"])) {
include ('../content/logout.php');
exit();
}
?>

要使用 session 变量,您始终必须在您拥有的每个 php 上启动 session 。它有点像没有发送的 POST ^^ 而且它必须是任何输出!但是你必须告诉你的 php 有一个 session ,你想使用它。

编辑

参见 this quote

session_start() creates a session OR RESUMES THE CURRENT ONE based on a session identifier passed via a GET or POST request, or passed via a cookie.

关于mysql - 与 php 中的 session_start() 有关,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28020365/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com