【问题标题】:how to do retain or store previous session post value to another page?如何将以前的会话帖子值保留或存储到另一个页面?
【发布时间】:2013-04-12 13:13:00
【问题描述】:

我有两页产品和购物车,但问题是当我将$_SESSION['itemcode'] 发布到购物车页面然后select query working 但是当页面重定向到产品作为continue shopping 然后新产品覆盖旧产品?

产品页面

session_start();
if(isset($_POST['size']))
{

$_SESSION['pid']= implode (",",$_POST['pid']);
$_SESSION['wid2']=$_POST['wid'];
$_SESSION['itemcode3']=$_POST['itemcode'];
if($_REQUEST['command']=='add' && $_REQUEST['id']){
$id=$_REQUEST['id'];
addtocart($id,1);
header('location:shoppingcart.php');
exit();
}

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

$length= count($_POST['product']);
for($i=0; $i<$length; $i++)
{
$size=$_POST['size'];

$query2=mysql_query("INSERT INTO mywishlist VALUES 
('','$id','".$_SESSION['id']."','".$_SESSION['email']."','".$_POST['itemcode']  
[$i]."','".$_POST['product'][$i]."','$size','".$_POST['price']
[$i]."','".$_POST['image1'][$i]."','')")
or die ("My Wish List");
}

购物车页面

session_start();
$itemcode2=implode(',',$_SESSION['itemcode3']);

$querycart=mysql_query("SELECT * FROM products INNER JOIN mywishlist ON 
products.`id`=mywishlist.`pid` 
WHERE  mywishlist.itemcode='".$itemcode2."' ")
or die ("shoppingcart query"); 
while($rowcart=mysql_fetch_assoc($querycart))
{   
?>
<?php echo $rowcart['itemcode']; ?>
<?php echo $rowcart['products']; ?>
<?php echo $rowcart['qty']; ?>
<?php echo $rowcart['price']; ?>

<?php }?>

【问题讨论】:

  • 您在产品页面上的查询是什么?
  • 题外话:小心SQL注入攻击处理$_POST['itemcode']

标签: php session shopping-cart shopping


【解决方案1】:

您还需要在开头的产品页面中调用session_start();。还要确保在将输入传递给查询之前对其进行清理

【讨论】:

    猜你喜欢
    • 2019-09-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-06
    • 2019-04-28
    • 2013-01-28
    • 2019-05-18
    • 1970-01-01
    相关资源
    最近更新 更多