Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/278.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
PHP会话值未存储在服务器上,在xampp上工作_Php_Session - Fatal编程技术网

PHP会话值未存储在服务器上,在xampp上工作

PHP会话值未存储在服务器上,在xampp上工作,php,session,Php,Session,我是新来的,我的php知识是基础的, 我在其他线程中找不到问题的答案,所以我希望在这里找到它 情况: 在本地pc(xampp)上一切正常,在Web服务器上我遇到一些问题: 登录时创建的会话值工作正常, 浏览时创建的会话值未被存储 登录时创建的这些会话工作正常,我可以在每个页面上访问它们: SQL query .... $_SESSION['user_id']= $row['user_id']; $_SESSION['user_name']= $row['user_name']; $_SE

我是新来的,我的php知识是基础的,
我在其他线程中找不到问题的答案,所以我希望在这里找到它

情况: 在本地pc(xampp)上一切正常,在Web服务器上我遇到一些问题:

登录时创建的会话值工作正常,
浏览时创建的会话值未被存储

登录时创建的这些会话工作正常,我可以在每个页面上访问它们:

SQL query 
....
 $_SESSION['user_id']= $row['user_id'];
 $_SESSION['user_name']= $row['user_name'];
 $_SESSION['user_pwd']= $row['user_pwd'];
 header("location: overzciht.php");
 exit();
浏览时创建的此会话“sid”在服务器上没有值:

<?php
include 'includes/header.inc.php';

if (isset($_POST['id'])){
   $id = mysqli_real_escape_string($conn, $_POST['id']);
   $_SESSION['sid'] = $id;
} else {
  $id = $_SESSION['sid'];
}
....
$sql = "SELECT DISTINCT $select FROM lijst WHERE id =? ";
$stmt = $conn -> prepare($sql);
$stmt -> bind_param('i', $id);
$stmt -> execute();

php是如何运行的(apache或fpm上的mod php)?检查会话目录设置为的php配置,并检查运行php脚本的用户是否具有该目录的写入权限。检查php错误日志,如果存在阻止写入会话的som配置问题,您应该至少在logsServer API=CGI/FastCGI中获得警告消息。。。session.save_path=/var/cpanel/php/sessions/ea-php71.->我在文件管理器中找不到此路径。。。错误日志=错误日志->我找不到错误日志。。。。在cPanel中的Metrics:Errors下为空。在文件管理器/日志中,我得到了3个关于php的文件。但是来自登录的会话正在工作,所以/var/cpanel/php/sessions/ea-php71应该在那里并且可以工作。这是一个奇怪的问题。如果在两个脚本上都有session\u start$\u session superglobal应该是持久的。尝试在重定向之前和重定向之后立即回显整个$\u会话(在接收脚本时)。如果$\u会话在接收时为空,则会话存储或初始化有问题;如果在重定向之前为空,或者在接收脚本开始时为空,则在会话\u启动之后,则代码中有问题。在这一点上,我没有什么可以帮助你接近,我有一个相同代码的第二个页面:if(isset($\u POST['id']){$id=mysqli\u real\u escape\u string($conn,$\u POST['id']);$\u SESSION['sid']=$id;}否则{$id=$\u SESSION sid['sid']}。如果我在该页面上选择了一个id,它将成为重定向之前的会话id。所以这是代码中的一个问题。在那两页之间。谢谢你的指导,我明天再看!我现在会找到解决方案。php是如何运行的(apache或fpm上的mod php)?检查会话目录设置为的php配置,并检查运行php脚本的用户是否具有该目录的写入权限。检查php错误日志,如果存在阻止写入会话的som配置问题,您应该至少在logsServer API=CGI/FastCGI中获得警告消息。。。session.save_path=/var/cpanel/php/sessions/ea-php71.->我在文件管理器中找不到此路径。。。错误日志=错误日志->我找不到错误日志。。。。在cPanel中的Metrics:Errors下为空。在文件管理器/日志中,我得到了3个关于php的文件。但是来自登录的会话正在工作,所以/var/cpanel/php/sessions/ea-php71应该在那里并且可以工作。这是一个奇怪的问题。如果在两个脚本上都有session\u start$\u session superglobal应该是持久的。尝试在重定向之前和重定向之后立即回显整个$\u会话(在接收脚本时)。如果$\u会话在接收时为空,则会话存储或初始化有问题;如果在重定向之前为空,或者在接收脚本开始时为空,则在会话\u启动之后,则代码中有问题。在这一点上,我没有什么可以帮助你接近,我有一个相同代码的第二个页面:if(isset($\u POST['id']){$id=mysqli\u real\u escape\u string($conn,$\u POST['id']);$\u SESSION['sid']=$id;}否则{$id=$\u SESSION sid['sid']}。如果我在该页面上选择了一个id,它将成为重定向之前的会话id。所以这是代码中的一个问题。在那两页之间。谢谢你的指导,我明天再看!我现在会找到解决办法的。