当数量设置为0时,从数据库中删除项目。仅从数组中删除

时间:2016-03-23 04:01:23

标签: php mysql sql

在评论部分,我想我想从数据库中删除它,但它不起作用。当用户将数量设置为0时我想要它,然后删除数据库中的项目。它只在数组中删除。

<?php
        /*require_once('Connections/catalogue.php');*/
        if(isset($_POST['submit']))
        {
            if(isset($_POST['quantity']))
            foreach($_POST['quantity'] as $key => $val)
            {
                if($val==0)
                {
                    unset($_SESSION['cart'][$key]);
                    /* $sql_delete="DELETE FROM `maklumat_belian` WHERE id_produk=id";
                    $result=mysql_query($sql_delete);
                    if ($result)
                    header("Location: products.php?page=cart"); */

                }
                else
                {
                    $_SESSION['cart'][$key]['quantity']=$val; 
                } 
            }
        }
    ?>

2 个答案:

答案 0 :(得分:1)

假设$_SESSION['cart'][$key]是数据库中的产品ID,首先需要从PHP代码中删除注释标记(/**/)。因此,如果用当前的sql查询替换它,这应该可以工作:

if($val==0){
  unset($_SESSION['cart'][$key]);

  $sql_delete="DELETE FROM `maklumat_belian` WHERE id_produk=".$_SESSION['cart'][$key];
  $result=mysql_query($sql_delete);

  if ($result){
    header("Location: products.php?page=cart");
  }
}

只是一方面,我强烈建议使用像PDO这样的东西用于安全目的。使用mysql_query和直接id插入将使您面临攻击风险。只是值得深思。希望这有帮助!

答案 1 :(得分:1)

如果产品ID为$ _SESSION ['cart'] [$ key]

$id_produk = $_SESSION['cart'][$key];

如果产品ID为$ key

$id_produk = $key;

代码:

<?php
    /*require_once('Connections/catalogue.php');*/
    if(isset($_POST['submit']))
    {
        if(isset($_POST['quantity']))
        foreach($_POST['quantity'] as $key => $val)
        {
            if($val==0)
            {
                unset($_SESSION['cart'][$key]);

                $id_produk = $_SESSION['cart'][$key]; # Asssign the product id

                $sql_delete="DELETE FROM `maklumat_belian` WHERE id_produk='$id_produk'";
                $result=mysql_query($sql_delete);
                /*if ($result)
                header("Location: products.php?page=cart");*/

            }
            else
            {
                $_SESSION['cart'][$key]['quantity']=$val; 
            } 
        }
    }
?>