public static function verification($pseudo, $password) { $cnx = Connexion::connecter(); // fonction définie par ailleurs // préparation de la requête $pseudoSql = $cnx->quote($pseudo); $passwordSql = $cnx->quote($password); // le mot de passe est chiffré dans la BDD $sql = "SELECT COUNT(*) as id FROM users WHERE pseudo={$pseudoSql} AND\r\n password={$passwordSql}"; $result = $cnx->query($sql); $row = $result->fetch(); $cnx = ""; return $row['id'] == 1; }
public static function getPrivilegeByPseudo($pseudo) { $retour = null; try { // Requête textuelle paramétrée (le paramètre est symbolisé par un ?) $sql = "SELECT privilège FROM users WHERE pseudo = ?"; // préparer la requête PDO $queryPrepare = Connexion::getPdo()->prepare($sql); // exécuter la requête avec les valeurs des paramètres (il n'y en a qu'un ici) dans un tableau if ($queryPrepare->execute(array($pseudo))) { // si la requête réussit : // extraire l'enregistrement retourné par la requête $enregistrement = $queryPrepare->fetch(PDO::FETCH_ASSOC); // construire l'objet métier correspondant $retour = $enregistrement['privilège']; } } catch (PDOException $e) { echo get_class() . ' - ' . __METHOD__ . ' : ' . $e->getMessage(); } return $retour; }
public static function getOneByIdCompo($idEtablissement, $idTypeChambre, $idGroupe) { $retour = null; $valeursClePrimaire = array($idEtablissement, $idTypeChambre, $idGroupe); try { // Requête textuelle paramétrée (le paramètre est symbolisé par un ?) $sql = "SELECT * FROM attribution WHERE idEtab = ? AND idTypeChambre = ? AND idGroupe = ?"; // préparer la requête PDO $queryPrepare = Connexion::getPdo()->prepare($sql); // exécuter la requête avec les valeurs des paramètres (il n'y en a qu'un ici) dans un tableau if ($queryPrepare->execute($valeursClePrimaire)) { // si la requête réussit : // extraire l'enregistrement retourné par la requête $enregistrement = $queryPrepare->fetch(PDO::FETCH_ASSOC); // construire l'objet métier correspondant $retour = self::enregistrementVersObjet($enregistrement); } } catch (PDOException $e) { echo get_class() . ' - ' . __METHOD__ . ' : ' . $e->getMessage(); } return $retour; }
public static function getPrivilege($login) { $retour = FALSE; // Requête textuelle $sql = "SELECT privilege FROM client WHERE login=:l"; try { // préparer la requête PDO $queryPrepare = Connexion::getPdo()->prepare($sql); // exécuter la requête PDO if ($queryPrepare->execute(array(':l' => $login))) { // si la requête réussit : if ($enregistrement = $queryPrepare->fetch(PDO::FETCH_ASSOC)) { // test du nombre d'enregistrments trouvés $retour = (int) $enregistrement['privilege']; } } } catch (PDOException $e) { echo get_class($this) . ' - ' . __METHOD__ . ' : ' . $e->getMessage(); } var_dump($retour); //a return $retour; }
<?php include "_debut.inc.php"; require_once __DIR__ . "/../../includes/fonctions.inc.php"; use modele\dao\UserDAO; use modele\Connexion; // AFFICHER L'ENSEMBLE DES TYPES DE CHAMBRES // CETTE PAGE CONTIENT UN TABLEAU CONSTITUÉ D'1 LIGNE D'EN-TÊTE ET D'1 LIGNE PAR // TYPE DE CHAMBRE echo "\r\n<br>\r\n<table width='40%' cellspacing='0' cellpadding='0' class='tabNonQuadrille'>\r\n <tr class='enTeteTabNonQuad'>\r\n <td colspan='4'><strong>Types de chambres</strong></td>\r\n </tr>"; Connexion::connecter(); $rsTypeChambre = obtenirTypesChambres($connexion); if (isset($_SESSION['pseudo'])) { $privil = UserDAO::getPrivilegeByPseudo($_SESSION['pseudo']); } // BOUCLE SUR LES TYPES DE CHAMBRES while ($lgTypeChambre = $rsTypeChambre->fetch(PDO::FETCH_ASSOC)) { $id = $lgTypeChambre['id']; $libelle = $lgTypeChambre['libelle']; echo "\r\n <tr class='ligneTabNonQuad'> \r\n <td width='15%'>{$id}</td>\r\n <td width='33%'>{$libelle}</td>\r\n <td width='26%' align='center'>"; if (isset($_SESSION['pseudo']) && $privil == '1') { echo "<a href='cGestionTypesChambres.php?action=demanderModifierTypeChambre&id={$id}'>\r\n Modifier</a></td>"; } // S'il existe déjà des attributions pour le type de chambre, il faudra // d'abord les supprimer avant de pouvoir supprimer le type de chambre if (!existeAttributionsTypeChambre($connexion, $id) && isset($_SESSION['pseudo']) && $privil == '1') { echo "\r\n <td width='26%' align='center'>\r\n <a href='cGestionTypesChambres.php?action=demanderSupprimerTypeChambre&id={$id}'>\r\n Supprimer</a></td>"; } else { echo "<td width='26%'> </td>"; } echo " \r\n </tr>";
public static function delete($idMetier) { $retour = null; try { $sql = "DELETE FROM typechambre WHERE id = ?"; $queryPrepare = Connexion::getPdo()->prepare($sql); if ($queryPrepare->execute(array($idMetier))) { $retour = 1; } } catch (PDOException $e) { echo get_class() . ' - ' . __METHOD__ . ' : ' . $e->getMessage(); } return $retour; }
function obtenirNbEtab() { // global $connexion; $req = "SELECT COUNT(*) FROM etablissement"; $stmt = Connexion::connecter()->prepare($req); $stmt->execute(); return $stmt->fetchColumn(); }
<title>test DAO</title> </head> <body> <?php use modele\dao\EtabDAO; use modele\Connexion; use modele\metier\Etablissement; require_once "../includes/fonctions.inc.php"; // require_once("../modele/dao/AttribDAO.class.php"); // require_once("../modele/dao/DAO.class.php"); // require_once("../modele/dao/EtabDAO.class.php"); // require_once("../modele/dao/GroupeDAO.class.php"); // require_once("../modele/dao/OffreDAO.class.php"); // require_once("../modele/dao/TypeChambreDAO.class.php"); // require_once("../modele/Connexion.class.php"); $pdo = Connexion::connecter(); // Test d'EtablissementDAO echo "<h3>Test d'EtabDAO</h3>"; // Etablissement : test de sélection de toutes les attributions echo "<p>Etablissement : test de sélection de toutes les établissements</p>"; $lesEtabs = EtabDAO::getAll(); var_dump($lesEtabs); // Etablissement : test de sélection d'une seul attribution echo "<p>Etablissement : test de sélection d'une seul attribution</p>"; $unEtab = EtabDAO::getOneById('0350773A'); var_dump($unEtab); // Etablissement : test d'insérer un nouvelle établissement echo "<p>Etablissement : test d'insérer un nouvelle établissement</p>"; $objetEtab = new Etablissement('42565', 'La Joliverie', '42 rue de la Jol', '44000', 'Nantes', '0258657890', '*****@*****.**', 0, 'Monsieur', 'Jean', 'PAULE'); $ok = EtabDAO::insert($objetEtab); var_dump($ok);
public static function estUnNomGroupe($mode, $id, $nom) { // global $connexion; $nom = str_replace("'", "''", $nom); // S'il s'agit d'une création, on vérifie juste la non existence du nom sinon // on vérifie la non existence d'un autre établissement (id!='$id') portant // le même nom if ($mode == 'C') { $req = "SELECT COUNT(*) FROM groupe WHERE nom=?"; $stmt = Connexion::connecter()->prepare($req); $stmt->execute(array($nom)); } else { $req = "SELECT COUNT(*) FROM groupe WHERE nom=? AND id<>?"; $stmt = Connexion::connecter()->prepare($req); $stmt->execute(array($nom, $id)); } return $stmt->fetchColumn(); }
// CETTE PAGE CONTIENT UN TABLEAU CONSTITUÉ D'1 LIGNE D'EN-TÊTE ET D'1 LIGNE PAR // ÉTABLISSEMENT echo "\r\n<br>\r\n<table width='55%' cellspacing='0' cellpadding='0' class='tabNonQuadrille'>\r\n\r\n <tr class='enTeteTabNonQuad'>\r\n <td colspan='4'><strong>Etablissements</strong></td>\r\n </tr>"; Connexion::connecter(); $arrayEtab = EtablissementDao::getAll(); //$rsEtab = mysql_query($req, $connexion); if (isset($_SESSION['pseudo'])) { $privil = UserDAO::getPrivilegeByPseudo($_SESSION['pseudo']); } // BOUCLE SUR LES ÉTABLISSEMENTS for ($i = 0; $i < count($arrayEtab); $i++) { $unEtab = $arrayEtab[$i]; echo "\r\n\t\t<tr class='ligneTabNonQuad'>\r\n <td width='52%'>" . $unEtab->getNom() . "</td>\r\n \r\n <td width='16%' align='center'> \r\n <a href='cGestionEtablissements.php?action=detailEtab&id=" . $unEtab->getId() . "'>\r\n Voir détail</a></td>"; if (isset($_SESSION['pseudo']) && $privil == '1') { echo "<td width='16%' align='center'> \r\n <a href='cGestionEtablissements.php?action=demanderModifierEtab&id=" . $unEtab->getId() . "'>\r\n Modifier</a></td>"; } // S'il existe déjà des attributions pour l'établissement, il faudra // d'abord les supprimer avant de pouvoir supprimer l'établissement if (!existeAttributionsEtab($connexion, $unEtab->getId()) && isset($_SESSION['pseudo']) && $privil == '1') { echo "\r\n <td width='16%' align='center'> \r\n <a href='cGestionEtablissements.php?action=demanderSupprimerEtab&id=" . $unEtab->getId() . "'>\r\n Supprimer</a></td>"; } else { echo "\r\n <td width='16%'> </td>"; } echo "\r\n </tr>"; } if (isset($_SESSION['pseudo']) && $privil == '1') { echo "\r\n</table>\r\n<br>\r\n<a href='cGestionEtablissements.php?action=demanderCreerEtab'>\r\nCréation d'un établissement</a >"; } include "_fin.inc.php"; Connexion::deconnecter();
public static function supprimerTypeChambre($id) { $req = "DELETE FROM typechambre WHERE id=?"; $stmt = Connexion::connecter()->prepare($req); $ok = $stmt->execute(array($id)); return $ok; }
public static function creerTypeChambre($id, $libelle) { try { Connexion::connecter(); // Requête textuelle paramétrée (le paramètre est symbolisé par un ?) $sql = "INSERT INTO typechambre VALUES( ? , ? )"; // préparer la requête PDO $queryPrepare = Connexion::getPdo()->prepare($sql); // exécuter la requête avec les valeurs des paramètres (il n'y en a qu'un ici) dans un tableau if ($queryPrepare->execute(array($id, $libelle))) { // si la requête réussit : $retour = 1; } } catch (PDOException $e) { echo get_class() . ' - ' . __METHOD__ . ' : ' . $e->getMessage(); } return $retour; }
function TypeChambreDaoDelete() { $pdo = Connexion::connecter(); //TypeChambre : test de suppression d'une chambre echo "<p>TypeChambre : test de suppression d'une chambre</p>"; try { TypeChambreDao::delete('C6'); } catch (PDOException $e) { echo 'ERROR : ' . $e->getMessage(); } $pdo = Connexion::deconnecter(); }
public static function obtenirNbOccup($idEtab, $idTypeChambre) { $req = "SELECT IFNULL(SUM(nombreChambres), 0) AS totalChambresOccup FROM\n attribution WHERE idEtab=:idEtab AND idTypeChambre=:idTypeCh"; $stmt = Connexion::connecter()->prepare($req); $stmt->bindParam(':idEtab', $idEtab); $stmt->bindParam(':idTypeCh', $idTypeChambre); $stmt->execute(); $nb = $stmt->fetchColumn(); return $nb; }
public static function obtenirGroupesEtab($id) { $req = "SELECT DISTINCT id, nom FROM groupe \n INNER JOIN attribution ON attribution.idgroupe = groupe.id \n WHERE idEtab=?"; $stmt = Connexion::connecter()->prepare($req); $stmt->execute(array($id)); return $stmt; }