【问题标题】:Dynamic cart table and cookie creation动态购物车表和 cookie 创建
【发布时间】:2015-05-17 21:07:42
【问题描述】:

会感谢某人的帮助吗?菜鸟来了。

当用户将商品添加到购物车并设置数量时,我希望为用户创建一个购物车表。如果该表是用户 6,则该表将命名为“CART_6”,如果表已存在,则将添加一个新行。然后,一个 cookie 将获取购物车中数量的总和(不知道如何执行此操作,但我稍后会弄清楚)。目前,我遇到了 SQL 语法问题,尤其是在反映 php 变量 $user 的购物车表名称周围。特别是它会为我以前从未使用过的第一个 @ 符号抛出错误。

if(isset($_POST["quantity"])){

    $quantity = $_POST['quantity'];

    $query = mysqli_query($db_conx, 'CART_'.$user);
    if ($query === FALSE) {

        DECLARE @table_name varchar(max)
        SET @table_name = 
        (SELECT 'CART_' + mysql_real_escape_string($user) )

            $nquery = "CREATE TABLE " + @tablename" (
                    ID int(11) AUTO_INCREMENT,
                    product_name varchar(255) NOT NULL,
                    price int(11) NOT NULL,
                    quantity int(5) NOT NULL,
                    added DATETIME NOT NULL,
                    PRIMARY KEY (ID)
                      )";
            $result = mysqli_query($db_conx, $nquery);
    }

    INSERT INTO @table_name (product_name,price,quantity,added)
    VALUES ($name,$p,$quantity,now());

    $cookie_name = "$user";
    $cookie_value = "sum of quantities";
    setcookie($cookie_name, $cookie_value, time() + (86400), "/"); // 86400 = 1 day

}

【问题讨论】:

    标签: php html mysql sql cookies


    【解决方案1】:

    您的@用法与使用表名有关,这些变量是@dcp 所述不允许的变量,请参阅Table name as variable

    【讨论】:

      猜你喜欢
      • 2020-10-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-29
      相关资源
      最近更新 更多