Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/61.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 与php中的会话_start()相关_Mysql_Php 5.5 - Fatal编程技术网

Mysql 与php中的会话_start()相关

Mysql 与php中的会话_start()相关,mysql,php-5.5,Mysql,Php 5.5,我是PHP的新用户。我正在做一些PHP项目。需要一些关于PHP会话的帮助。我有一个login.html页面,该页面从action perform到login.js。当执行登录时,用户名和密码要求url到login.php页面,以检查mysql db表中的用户名和密码,并启动会话\u start并将$\u会话设置为用户名和密码。如果为true,则在home.php页面上重新定位会话。但是我的home.php页面包含了使用此php代码的html代码 <?php if(!isse

我是PHP的新用户。我正在做一些PHP项目。需要一些关于PHP会话的帮助。我有一个login.html页面,该页面从action perform到login.js。当执行登录时,用户名和密码要求url到login.php页面,以检查mysql db表中的用户名和密码,并启动会话\u start并将$\u会话设置为用户名和密码。如果为true,则在home.php页面上重新定位会话。但是我的home.php页面包含了使用此php代码的html代码

    <?php
    if(!isset($_SESSION["USER"])) { 
        include ('../content/logout.php');
        exit();
    }
?>
 <?php
    session_destroy();
    session_unset(); 
?>
我已经在login.php上启动了SESSION\u start;对于会话,未在上启动。但这是一个开始。当我重新定位到home.php时,它不起作用。我在home.php上检查它以打印,但它没有显示。我附带了用home.php编写的php代码。 它向我显示了一个错误 [client 127.0.0.1:53005]PHP警告:会话\销毁:试图销毁logout.PHP中未初始化的会话

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

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

然后重新定位到login.html页面。

您必须再次启动会话。必须在每一页上

<?php
    session_start();
    if(!isset($_SESSION["USER"])) { 
        include ('../content/logout.php');
        exit();
    }
?>
要使用会话变量,您必须在所有php上启动会话。这有点像没有发送^^的帖子,必须在任何输出之前发送!但是你必须告诉你的php有一个会话,你想使用它

编辑

session_start根据通过GET或POST请求传递的会话标识符或通过cookie传递的会话标识符创建会话或恢复当前会话


当服务器接收到HTTP请求时,它接收GET/POST/COOKIE数据,并且不知道客户端与哪个服务器端会话相关

调用时,服务器根据通过GET或POST请求传递的会话标识符或通过cookie传递的会话标识符创建会话或恢复当前[session]

所以,每当您需要一个php会话时,比如说:要读取/写入$\会话,您必须首先使用session\ u start调用会话,服务器将根据GET/POST/COOKIE数据创建或加载会话


如果每次调用session_start都很麻烦,请使用param。或者您可以将session\u start放在一个文件中。

您必须在每个php文件上都有session\u start。。。它更像是邮政。。。每次都会通过。你能告诉我吗。会话开始需要在每个页面上进行。如果我们从登录页面开始,那么为什么我们需要在另一个页面上重新开始。会话开始需要在每个页面上进行。如果我们从登录页面开始,那么为什么我们需要在另一个页面上重新开始。就像我说的。。。在接下来的几页中,这并不是真正的开始。。。会话\u start更像是包含会话,而不是。但是你只要加上它就行了。这应该可以做到:但是假设我没有在php代码上添加session_start。那它行吗?如果它不起作用,我们怎么能不在另一页上写下会话开始;如果有人想要这样..没有其他方法可以在会话中存储数据,而不在每个页面中添加会话开始。实际上,如果你用OOP编程,你没有1000页。您将拥有一个controllerclass,其中包含所需的php文件,并且控制器包含会话启动,因此在本例中只需要一次。但在您的情况下,您显然需要在每一页上使用它:其他方法是将数据存储在数据库中,或者可能是cookie…好的:谢谢您的详细解释:你能告诉我会话的确切定义吗?