예제 #1
0
 public static function setModifAdresse(Utilisateur $user)
 {
     try {
         $conn = Main::BDDConnexionPDO();
         $req = $conn->prepare("UPDATE Utilisateur SET Adresse=?, CodePostal=?, Ville=? WHERE AdresseMail=? ");
         $req->execute(array($user->getAdresse(), $user->getCodePostal(), $user->getVille(), $user->getAdresseMail()));
         $conn = null;
     } catch (\Exception $ex) {
         Main::setFlashMessage($ex->getMessage(), 'error');
     }
 }
예제 #2
0
 public static function setAjouterUser(Utilisateur $unUser)
 {
     try {
         $mdp = sha1($unUser->getPassword());
         $conn = Main::BDDConnexionPDO();
         $reqprepare2 = $conn->prepare("INSERT INTO Utilisateur (Nom, Prenom, Password, AdresseMail, Adresse, CodePostal, Ville) VALUES (?,?,?,?,?,?,?)");
         $reqprepare2->execute(array($unUser->getNom(), $unUser->getPrenom(), $mdp, $unUser->getAdresseMail(), $unUser->getAdresse(), $unUser->getCodePostal(), $unUser->getVille()));
         $conn = null;
     } catch (\PDOException $ex) {
         Main::setFlashMessage($ex->getMessage(), 'error');
     }
 }
예제 #3
0
 public static function getUnUserbyId($num)
 {
     try {
         $conn = Main::BDDConnexionPDO();
         $req = $conn->prepare("SELECT * FROM Utilisateur WHERE NumUser=?");
         $req->execute(array($num));
         $req = $req->fetch();
         $unUser = new Utilisateur($req['NumUser'], $req['Nom'], $req['Prenom'], $req['Password'], $req['AdresseMail'], $req['Adresse'], $req['CodePostal'], $req['Ville']);
         $conn = null;
         return $unUser;
     } catch (\Exception $ex) {
         Main::setFlashMessage($ex->getMessage(), 'error');
     }
 }
예제 #4
0
 public static function getlivreEdition($edition)
 {
     try {
         $conn = Main::BDDConnexionPDO();
         $req = $conn->prepare("SELECT * FROM Edition WHERE NumEdition = ?");
         $req->execute(array($edition));
         $req = $req->fetch();
         $UneEdition = new Edition($req['NumEdition'], $req['NomEdition']);
         $conn = null;
         return $UneEdition;
     } catch (\Exception $e) {
         Main::setFlashMessage($e->getMessage(), 'error');
     }
 }
예제 #5
0
 public static function getunAuteur($NumAuteur)
 {
     try {
         $conn = Main::BDDConnexionPDO();
         $req = $conn->prepare("SELECT * FROM Auteur WHERE NumAuteur = ?");
         $req->execute(array($NumAuteur));
         $req = $req->fetch();
         $UnAuteur = new Auteur($req['NumAuteur'], $req['NomAuteur']);
         $conn = null;
         return $UnAuteur;
     } catch (\Exception $e) {
         Main::setFlashMessage($e->getMessage(), 'error');
     }
 }
예제 #6
0
 public static function getLesGenres()
 {
     $LesGenres = new Collection();
     try {
         $conn = Main::BDDConnexionPDO();
         $req = $conn->query("SELECT * FROM Genre");
         $req = $req->fetchAll();
         foreach ($req as $Genre) {
             $unGenre = new Genre($Genre['NumGenre'], $Genre['NomGenre']);
             $LesGenres->ajouter($unGenre);
         }
     } catch (\Exception $e) {
         Main::setFlashMessage($e->getMessage(), 'error');
     }
     return $LesGenres;
 }
예제 #7
0
        break;
    case 'diminuerProduit':
        $_SESSION['Panier']->diminuerQuantiteProduit($_GET['ref'], 1);
        if ($_SESSION['Panier']->getNbProd() == 0) {
            unset($_SESSION['Panier']);
        } else {
            header('Location:?uc=Panier');
        }
        break;
    case 'validerCommande':
        try {
            if (isset($_POST['nom']) && !empty($_POST['nom']) && !empty($_POST['annee']) && !empty($_POST['mois']) && !empty($_POST['carte']) && !empty($_POST['cvc'])) {
                $user = MCompte::getUnUser($_SESSION['mail']);
                $commande = new Commande(1, $user, date('Y-m-d'));
                $idCommande = MPanier::AjouterCommande($commande);
                $uneCommande = MPanier::getUneCommande($idCommande);
                foreach ($_SESSION['Panier']->getProduitsPanier() as $livre) {
                    $quantite = new Quantite($livre, $uneCommande, $livre->getQte());
                    MPanier::AjouterCommandeProduit($quantite);
                    unset($_SESSION['Panier']);
                    Main::setFlashMessage('Votre commande a été pris en compte.', 'valid');
                    header('Location:?uc=Accueil');
                }
            } else {
                require_once ROOT . 'Views/Panier/vue_commande.php';
            }
        } catch (\Exception $e) {
            Main::setFlashMessage($e->getMessage(), 'error');
        }
        break;
}
예제 #8
0
 /**
  * @param Commande $commande
  * @return Collection
  */
 public static function getLivresbyCommande(Commande $commande)
 {
     $LesLivres = new Collection();
     try {
         $conn = Main::BDDConnexionPDO();
         $req = $conn->prepare("SELECT * FROM Quantite\n\t\t\t  INNER JOIN Commande ON Quantite.NoCommande = Commande.NumCommande\n\t\t\t  WHERE NoCommande = ?");
         $req->execute(array($commande->getNumCommande()));
         $req = $req->fetchAll();
         foreach ($req as $unLivre) {
             $livre = MLivre::getUnLivre($unLivre['NoLivres']);
             $commande = MPanier::getUneCommande($unLivre['NoCommande']);
             $quantite = new Quantite($livre, $commande, $unLivre['Quantite']);
             $LesLivres->ajouter($quantite);
         }
         return $LesLivres;
     } catch (\Exception $e) {
         Main::setFlashMessage($e->getMessage(), 'error');
     }
 }
예제 #9
0
                }
                if (!empty($_POST['adresse'])) {
                    $user->setAdresse($_POST['adresse']);
                    $_SESSION['Adresse'] = $_POST['adresse'];
                }
                MCompte::setUser($user);
                Main::setFlashMessage('Les informations du compte ont été mis à jour.', 'valid');
                header("Location:?uc=MonCompte");
            } else {
                Main::setFlashMessage('Veuillez remplir au moins un champ à modifier', 'error');
            }
        } catch (Exception $e) {
            Main::setFlashMessage('Une erreur est survenue lors de la modification de votre compte', 'error');
        }
        break;
    case 'HistoriqueCommande':
        try {
            $user = MConnexion::getUnUserbyId($_SESSION['user']);
            $tabCommandes = MPanier::getLesCommandesbyUser($user);
            if (isset($_POST['Commande'])) {
                $uneCommande = MPanier::getUneCommande($_POST['Commande']);
                $tabLivres = MPanier::getLivresbyCommande($uneCommande);
            }
            require_once ROOT . 'Views/Espace Compte/vue_historiquecommande.php';
        } catch (Exception $e) {
            Main::setFlashMessage('Une erreur est survenue lors de l\'affichage d\'une commande', 'error');
        }
        break;
    default:
        header("Location:?uc=Accueil");
}
예제 #10
0
 public static function getLivreRand()
 {
     $LesLivres = new Collection();
     try {
         $conn = Main::BDDConnexionPDO();
         $req = $conn->query("SELECT *\n\t\t\t  FROM Livre\n\t\t\t  INNER JOIN Genre ON Livre.NoGenre = Genre.NumGenre\n\t\t\t  INNER JOIN Auteur ON Livre.NumAuteur = Auteur.NumAuteur\n\t\t\t  INNER JOIN Edition ON Livre.NoEdition = Edition.NumEdition\n\t\t\t  ORDER BY Rand() DESC LIMIT 0,4");
         $req = $req->fetchAll();
         foreach ($req as $unLivre) {
             $genre = new Genre($unLivre['NoGenre'], $unLivre['NomGenre']);
             $auteur = new Auteur($unLivre['NumAuteur'], $unLivre['NomAuteur']);
             $edition = new Edition($unLivre['NoEdition'], $unLivre['NomEdition']);
             $livre = new Livre($genre, $unLivre['NumLivre'], $unLivre['CodeISBN'], $unLivre['Nom'], $auteur, $unLivre['QuantiteStock'], $unLivre['DateSortie'], $unLivre['Tarif'], $unLivre['Resume'], $unLivre['Langue'], $unLivre['Couverture'], $edition);
             $LesLivres->ajouter($livre);
         }
     } catch (\Exception $e) {
         Main::setFlashMessage($e->getMessage(), 'error');
     }
     return $LesLivres;
 }