Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/257.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 头重定向后会话变量丢失_Php_Session_Session Variables - Fatal编程技术网

Php 头重定向后会话变量丢失

Php 头重定向后会话变量丢失,php,session,session-variables,Php,Session,Session Variables,头重定向后会话变量丢失,即使我使用了Session_start();在所有页面中 这里是我的代码。 <?php session_start(); $id=$_REQUEST['id']; $pid=$_POST['pid']; $_SESSION['pid']=$_POST['pid']; 点击此按钮后$\u SESSION['pid']=$\u POST['pid'];`从所有页面中消失? <input type="button" class="button1" value="

头重定向后会话变量丢失,即使我使用了
Session_start();在所有页面中

这里是我的代码。

<?php 
session_start();
$id=$_REQUEST['id'];
$pid=$_POST['pid'];
$_SESSION['pid']=$_POST['pid'];
点击此按钮后$\u SESSION['pid']=$\u POST['pid'];`从所有页面中消失?

<input type="button" class="button1" value="Add To Cart" 
 onclick="addtocart(<?php echo $row3['id']?>);" />
</div>
</div></form>

标题('location:shoppingcart.php')
是一个强制重定向,发生这种情况时没有POST,因此行
$\u SESSION['pid']=$\u POST['pid']将不起作用。如果您必须执行无Cookie会话,请查看
使用trans sid

您可能会在每个请求中设置
$\u SESSION['pid']=$\u POST['pid']
,即使您的帖子中甚至没有
pid

试着改变这个

$_SESSION['pid']=$_POST['pid'];
对此

if (isset($_POST['pid'])) {
  $_SESSION['pid'] = $_POST['pid'];
}

因为你没有发布每页
$\u SESSION['pid']=$\u POST['pid']
有时可能无法正确触发,从而终止会话中存储的数据,从而无法在其他代码段中进行验证。启用
error\u reporting()
,您可能会看到出了什么问题:)谢谢,我已经这样做了,但是您能给我解决这个问题的方法吗?我现在面临同样的问题
if (isset($_POST['pid'])) {
  $_SESSION['pid'] = $_POST['pid'];
}