【发布时间】:2012-12-11 20:16:12
【问题描述】:
我有一个购物车,我想保存 $_SESSION['cart'],其中包含用户选择的产品的 $product_id => $quantity。 例如:
[cart] => Array
(
[366] => 2000
[215] => 456
)
首先我序列化 $_SESSION['cart'],然后再将它插入到我的数据库中。
<?php
if($_SESSION['cart'])
{
$pedido= serialize($_SESSION['cart']);
}
?>
$sql1="insert into pedido(orden) values ('$pedido')";
现在我想在另一个页面中查看 $_SESSION['cart']。所以我使用:
$sql2 = "SELECT orden FROM pedido where id_pedido = '$ID'";
$rs2 = mysql_query($sql2, $conexio) or die("Error al consultar: ".mysql_error());
$row2 = mysql_fetch_row($rs2);
$id_usuario=$row2[0];
$_SESSION['cartguardado']= unserialize($id_usuario);
我知道在最后一步我做错了。任何机构都可以帮助我并帮助我找出错误?
【问题讨论】:
-
警告您的代码容易受到 sql 注入攻击。
-
您打算以这种方式命名 $_SESSION['cartguardado'] 还是仍应命名为 $_SESSION['cart']?
-
您看到错误了吗?如果没有,你看到了什么是你不期待的?你知道use of the mysql extension is discouraged吗?
-
你能找出错误在哪里吗?我们不知道您的所有变量是如何设置/命名的,如果我们不知道是代码错误还是先前设置的变量错误,我们将无法帮助您...
-
你真的得到了结果集中返回的任何行吗?你怎么知道
$ID使用什么?