Recherche…


Introduction

Nous pouvons utiliser la bibliothèque de panier d'achat de CI lorsque nous construisons un site de commerce électronique. Nous pouvons configurer ajouter au panier, mettre à jour les éléments du panier, supprimer les articles du panier et même effacer les fonctionnalités du chariot en utilisant cette bibliothèque.

De CodeIgniter Doc: La classe Cart permet d'ajouter des éléments à une session qui reste active pendant qu'un utilisateur navigue sur votre site. Ces éléments peuvent être récupérés et affichés dans un format standard de «panier d'achat», permettant à l'utilisateur de mettre à jour la quantité ou de supprimer des articles du panier.

Ajout d'articles dans le panier

Vous devez créer des fonctions dans un contrôleur, telles que l'insertion, la mise à jour, la suppression et la suppression du panier, etc.

$cartItem = array(
'id'      => 'MOTOG5',
'qty'     => 5,
'price'   => 100.99,
'name'    => 'Motorola Moto G5 - 16 GB',
'options' => array(
                'ram' => '3GB',
                'Color' => 'Fine Gold'
             )
);

Et créer des fonctions dans le modèle pour les tâches du chariot telles que l'insertion, la mise à jour, la suppression, la suppression, etc.

ex: pour insérer des articles dans le panier

$this->cart->insert($cartItem);

La méthode insert () renverra le $ rowid si vous insérez avec succès un seul élément. Vous pouvez donc vérifier que cet élément a été inséré ou non et afficher le message associé à l'utilisateur.

et vous pouvez insérer plusieurs éléments comme celui-ci

$data = array(
    array(
            'id'      => 'sku_123ABC',
            'qty'     => 1,
            'price'   => 39.95,
            'name'    => 'T-Shirt',
            'options' => array('Size' => 'L', 'Color' => 'Red')
    ),
    array(
            'id'      => 'sku_567ZYX',
            'qty'     => 1,
            'price'   => 9.95,
            'name'    => 'Coffee Mug'
    ),
    array(
            'id'      => 'sku_965QRS',
            'qty'     => 1,
            'price'   => 29.95,
            'name'    => 'Shot Glass'
    )
);

$this->cart->insert($data);

Éléments de base du panier d'achat CI

Comme nous pouvons ajouter plusieurs éléments dans le tableau Cart, puis l'ajouter à la session du panier, la classe Cart nécessite 4 éléments de base pour ajouter des données avec succès dans la session du panier.

  1. id (chaîne)
  2. quantité (nombre)
  3. prix (nombre, décimal)
  4. nom (chaîne)

Et si vous voulez ajouter plus d'options concernant le produit, vous pouvez utiliser le 5ème élément qui est "options". vous pouvez définir un tableau d'options dans cet élément.

Il ressemblera à ceci :

$cartItem = array(
    'id'      => 'MOTOG5',
    'qty'     => 5,
    'price'   => 100.99,
    'name'    => 'Motorola Moto G5 - 16 GB',
    'options' => array(
                    'ram' => '3GB',
                    'Color' => 'Fine Gold'
                 )
);

Afficher les articles du panier

Vous pouvez afficher les articles du chariot par boucle dans le panier ou vous pouvez afficher un seul article du panier.

$cartContents = $this->cart->contents();

Cela renverra un tableau d'éléments de panier afin que vous puissiez parcourir ce tableau en utilisant la boucle foreach.

 foreach ($cartContents as $items){
     echo "ID : ". $items["id"] . "<br>";
     echo "Name : ". $items["name"] . "<br>";
     echo "Quantity : ". $items["qty"] . "<br>";
     echo "Price : ". $items["price"] . "<br>";
  }

Vous pouvez formater ces données sous forme de cellule de tableau ou de div et ensuite afficher dans la vue.

Mettre à jour l'article du panier

Rowid: l'ID de ligne est un identifiant unique généré par le code du panier lorsqu'un article est ajouté au panier. La raison pour laquelle un identifiant unique est créé est que des produits identiques avec des options différentes peuvent être gérés par le panier.

Chaque élément du panier a un élément rowid et, par rowid, vous pouvez mettre à jour l'article du panier.

$updateItem = array(
    'rowid' => 'b99ccdf16028f015540f341130b6d8ec',
    'qty'   => 3
);

et ensuite sous le code

$this->cart->update($data);

Supprimer les articles du panier

En utilisant l'élément rowid, vous pouvez supprimer un élément du panier. il suffit de mettre la quantité de l'article à 0

$deleteItem = array(
    'rowid' => 'b99ccdf16028f015540f341130b6d8ec',
    'qty'   => 0
);

$this->cart->update($data);

cela va supprimer l'élément avec cette rowid.



Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow