使用php从mysql购物车中删除项目

时间:2014-11-05 15:45:35

标签: php mysql

我正在创建一个购物车系统并试图找到一种方法,只需按下一个简单的按钮即可删除相应的行。但是,我似乎找不到使用while循环动态执行此操作的方法。

<?php 
                //connect to DB.
                $con = mysqli_connect("localhost", "root", "", "books");
                if(mysqli_connect_errno())
                {
                    echo "Failed to connect to MySql: ". mysqli_connect_error();
                }
                $query = "SELECT * FROM cart WHERE customerID = '$_SESSION['id']'"; 
                $result = mysqli_query($con, $query);
                //creates a table for dumping the DB to, loops through the DB and posts the contents elegantly.
                echo "<table>";
                while($row = mysqli_fetch_array($result))
                { 
                echo "<tr><td>" . $row['bookAuthor'] . "</td><td>" .  $row['bookTitle'] . "</td><td>" . $row['bookPrice'] . "</td></tr>";


                $totalprice += $row['bookPrice'];
                }

                echo "</table>"; 
                echo "The total present price is: $".$totalprice;
                //closes the conncection to the DB
                mysqli_close($con); 
?>

我考虑过将一个echo查询语句放入数据库并添加&#34; $ row [&#39; deletebutton&#39;]&#34;对于while循环,但我不确定这一定是否有效。

2 个答案:

答案 0 :(得分:1)

简单的方法是创建一个新页面并将消息发送到此页面以删除该项目。 因此,在表格中添加一个带有链接的新列

<a href="removeItemFromBasket.php?id=2">delete</a>

在页面中你会看到这个值。

答案 1 :(得分:0)

要展开发布到问题的评论,您可以将其添加到您的行中:

echo "<tr><td>" . $row['bookAuthor'] . "</td><td>" .  $row['bookTitle'] . "</td><td>" . $row['bookPrice'] . "</td><td><input type='checkbox' name='remove[]' value='" . $row['ROW_ID'] . "' /></td></tr>";

然后使用表单中提交的数据,您可以执行以下操作:

$query = "DELETE FROM cart WHERE ROW_ID IN (" . implode(',',$_POST['remove']) . ")";

在查询中使用它之前,请记住检查删除的值。