Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/258.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_Mysql_Database_Session_Cart - Fatal编程技术网

Php 购物车系统与数据库的连接

Php 购物车系统与数据库的连接,php,mysql,database,session,cart,Php,Mysql,Database,Session,Cart,我目前有一个工作的购物车系统,当单击“addToCart”时,产品代码存储在$\u会话['cart']数组中,然后在下拉菜单中打印出来,如果没有存储值,则打印“购物车中没有项目”。这工作得很好,但是当我尝试使用产品代码从数据库中提取其余的items数据时,我得到了500个内部服务器错误,但是这种连接到数据库的方法工作得很好,任何建议都将不胜感激 <div class="dropDownCart"> <button onclick="dropDownCart()"

我目前有一个工作的购物车系统,当单击“addToCart”时,产品代码存储在$\u会话['cart']数组中,然后在下拉菜单中打印出来,如果没有存储值,则打印“购物车中没有项目”。这工作得很好,但是当我尝试使用产品代码从数据库中提取其余的items数据时,我得到了500个内部服务器错误,但是这种连接到数据库的方法工作得很好,任何建议都将不胜感激

<div class="dropDownCart">
        <button onclick="dropDownCart()" class="dropDownCartBtn">Cart</button>
        <div id="dropDownCartID" class="dropDownCartContent">
            <?php
            if ($_SESSION['cart'] === null) {
                echo "<span class='noItems'>No items in cart</span>";
            } elseif (!isset($_SESSION['cart'])) {
                echo "<span class='noItems'>No items in cart</span>";
            } else {
                require_once("dbConnection.php");
                $dbConn = getConnection();
                foreach ($_SESSION['cart'] as $productCode) {
                    $sqlQuery = "SELECT Name FROM studentcomforts WHERE Product_Code = $productCode";
                    $queryResult = $dbConn->query($sqlQuery);
                    $rowObj = $queryResult->fetchObject();
                        echo "<span class='cartItem'>
                                $rowObj->Name
                            </span>";
                }
            }
            ?>

运货马车

那么,您应该检查您的web服务器错误日志,以了解确切的错误。错误日志通常位于/var/log/apache2文件夹中。以下内容可能会有所帮助:

您需要使用session_start()初始化Php会话。应在第一个if语句之前调用session_start

如果您的产品代码是一个字符串,那么它应该用引号括起来,因此您的sql查询应该是:“从studentcomforts中选择名称,其中product_code='$productCode'

您可以组合if和first-else语句。例如:

if ($_SESSION['cart'] === null || !isset($_SESSION['cart']))