淘先锋技术网

首页 1 2 3 4 5 6 7

购物车类是一个常用的Web应用程序中的重要组成部分,它用于存储用户在购买商品时所选的物品。为了能够方便地管理购物车信息,我们需要将其存储在数据库中,MySQL是一个非常流行的关系型数据库管理系统,下面我们将介绍如何将购物车类存入MySQL中。

购物车类如何存入mysql

首先,我们需要创建一个名为“shopping_cart”的库。


CREATE DATABASE shopping_cart;

接下来,我们需要创建一个名为“items”的表,用于存储购物车中的商品信息。该表包含以下列:

  • id:商品ID,自增主键
  • name:商品名称
  • price:商品价格

CREATE TABLE items (
  id INT(11) NOT NULL AUTO_INCREMENT,
  name VARCHAR(255) NOT NULL,
  price DECIMAL(10, 2) NOT NULL DEFAULT '0.00',
  PRIMARY KEY (id)
);

然后,我们需要创建一个名为“cart”的表,用于存储购物车信息。该表包含以下列:

  • id:购物车ID,自增主键
  • user_id:用户ID
  • item_id:商品ID
  • quantity:商品数量
  • created_at:添加时间

CREATE TABLE cart (
  id INT(11) NOT NULL AUTO_INCREMENT,
  user_id INT(11) NOT NULL,
  item_id INT(11) NOT NULL,
  quantity INT(11) NOT NULL DEFAULT '0',
  created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (id)
);

现在,我们已经成功创建了两个表,接下来就是将购物车类的信息存入MySQL中。假设我们的购物车类名为“Cart”,以下是一个样例的类:


class Cart {
  // 存储购物车的商品数组
  private $items;

  // 初始化购物车
  public function __construct() {
    $this->items = array();
  }

  // 添加商品到购物车
  public function addItem($item, $quantity) {
    // 判断商品是否已经在购物车中
    if (array_key_exists($item->id, $this->items)) {
      // 如果已经存在,则增加数量
      $this->items[$item->id]['quantity'] += $quantity;
    } else {
      // 如果不存在,则添加新项
      $this->items[$item->id] = array(
        'item_id' => $item->id,
        'user_id' => $user_id,
        'quantity' => $quantity,
        'created_at' => date('Y-m-d H:i:s')
      );
    }
  }

  // 获取购物车中的物品
  public function getItems() {
    return $this->items;
  }
}

现在,我们可以在添加商品到购物车时,同时将商品信息和购物车信息存入MySQL中。以下是一个样例:


// 连接数据库
$mysqli = new mysqli("localhost","user","password","shopping_cart");

// 创建一个购物车实例
$cart = new Cart();

// 添加商品到购物车
$item = new Item(1, "Product 1", 10.00);
$quantity = 3;
$cart->addItem($item, $quantity);

// 存储购物车信息到数据库
foreach ($cart->getItems() as $item) {
  $query = "INSERT INTO cart (user_id, item_id, quantity, created_at) VALUES (".$item['user_id'].", ".$item['item_id'].", ".$item['quantity'].", '".$item['created_at']."')";
  $mysqli->query($query);
}

通过以上步骤,我们已经成功将购物车类存入MySQL中,现在在购物车中添加商品,我们可以轻松地从数据库中获取相应的信息。