示例#1
0
 public function ajoutPanier()
 {
     if (isset($_POST["ajoutProduit"]) && isset($_POST['quantite'])) {
         filter_var($_POST['quantite'], FILTER_SANITIZE_NUMBER_INT);
         $panier = new Panier();
         $idc = Client::where("email", $_SESSION["email"])->get()[0];
         $idcli = $idc->idClient;
         $nbPanier = $idc->whereHas('relationPanier', function ($panier) {
             $idc = Client::where("email", $_SESSION["email"])->get()[0];
             $panier->where("valide", 0)->where('id_Client', $idc->idClient);
         })->get();
         $idProd = Produit::find($_POST['ajoutProduit']);
         // si il n'y a pas de panier en cours
         if (sizeof($nbPanier) == 0) {
             $panier->prixTotal = $idProd->prix * $_POST['quantite'];
             $panier->id_client = $idcli;
             $panier->save();
         } else {
             $id = 0;
             while ($idc->relationPanier[$id]->valide != 0) {
                 $id++;
             }
             $panier = $idc->relationPanier[$id];
             $panier->prixTotal += $idProd->prix * $_POST['quantite'];
             $panier->save();
         }
         $produits = $panier->relationProduit;
         $prod = null;
         foreach ($produits as $produit) {
             if ($produit->idProduit == $idProd->idProduit) {
                 $prod = $produit;
                 break;
             }
         }
         if ($prod == null) {
             $panier->relationProduit()->attach($idProd, array("quantite" => $_POST['quantite']));
         } else {
             $prod->pivot->quantite += $_POST['quantite'];
             $prod->pivot->save();
         }
         $app = \Slim\Slim::getInstance();
         $app->redirect($app->urlFor("catalogue"));
     }
 }
示例#2
0
    public function affichageCatalogue()
    {
        $chaine = null;
        foreach ($this->tableau as $array) {
            $libelle = $array['libelle'];
            $description = $array['description'];
            $prix = $array['prix'];
            $id = Produit::where('libelle', '=', $libelle)->get()[0]->idProduit;
            $chaine .= <<<END
            <ul>
                <li>Libelle : {$libelle}</li>
                <li>Description : {$description}</li>
                <li>Prix : {$prix}</li>
            </ul>
            <form action='' method='post' name=''>
                 <input type='number' required='' name="quantite" placeholder='Quantité' min='1' autofocus>
                 <button type="submit" value="{$id}" name="ajoutProduit">Ajouter au panier</button>
            </form>
END;
        }
        return $chaine;
    }