function verifierDonneesEtabC($connexion, $id, $nom, $adresseRue, $codePostal, $ville, $tel, $nomResponsable, $nombreChambresOffertes) { if ($id == "" || $nom == "" || $adresseRue == "" || $codePostal == "" || $ville == "" || $tel == "" || $nomResponsable == "" || $nombreChambresOffertes == "") { ajouterErreur("Chaque champ suivi du caractère * est obligatoire"); } if ($id != "") { // Si l'id est constitué d'autres caractères que de lettres non accentuées // et de chiffres, une erreur est générée if (!estChiffresOuEtLettres($id)) { ajouterErreur("L'identifiant doit comporter uniquement des lettres non accentuées et des chiffres"); } else { if (estUnIdEtablissement($connexion, $id)) { ajouterErreur("L'établissement {$id} existe déjà"); } } } if ($nom != "" && estUnNomEtablissement($connexion, 'C', $id, $nom)) { ajouterErreur("L'établissement {$nom} existe déjà"); } if ($codePostal != "" && !estUnCp($codePostal)) { ajouterErreur("Le code postal doit comporter 5 chiffres"); } if ($nombreChambresOffertes != "" && !estEntier($nombreChambresOffertes)) { ajouterErreur("La valeur de l'offre doit être un entier"); } }
/** * Retire un produit du panier * FONCTION A AJOUTER !!!!!!!!!!!!!!!! * Recherche l'index de l'idProduit dans la variable session * et détruit la valeur à ce rang * @param $idProduit : identifiant de produit /** * teste si une chaîne a un format de code postal * * Teste le nombre de caractères de la chaîne et le type entier (composé de chiffres) * @param $codePostal : la chaîne testée * @return : vrai ou faux */ function estUnCp($codePostal) { return strlen($codePostal) == 5 && estEntier($codePostal); }
function estUnCp($codePostal) { // Le code postal doit comporter 5 chiffres return strlen($codePostal) == 5 && estEntier($codePostal); }
case 'validerModifierOffre': $idEtab = $_REQUEST['idEtab']; $idTypeChambre = $_REQUEST['idTypeChambre']; $nbChambres = $_REQUEST['nbChambres']; $nbLignes = $_REQUEST['nbLignes']; $arrayEtab = EtabDAO::getAll(); $nbEtab = OffreDAO::obtenirNbEtab(); $arrayTypeChambre = TypeChambreDAO::getAll(); $nbTypesChambres = OffreDAO::obtenirNbTypesChambres(); $lgEtab = OffreDAO::obtenirDetailEtablissement($idEtab); $err = false; for ($i = 0; $i < $nbLignes; $i = $i + 1) { // Si la valeur saisie n'est pas numérique ou est inférieure aux // attributions déjà effectuées pour cet établissement et ce type de // chambre, la modification n'est pas effectuée $entier = estEntier($nbChambres[$i]); $modifCorrecte = OffreDAO::estModifOffreCorrecte($idEtab, $idTypeChambre[$i], $nbChambres[$i]); if (!$entier || !$modifCorrecte) { $err = true; } else { OffreDAO::modifierOffreHebergement($idEtab, $idTypeChambre[$i], $nbChambres[$i]); } } if ($err) { ajouterErreur("Valeurs non entières ou inférieures aux attributions effectuées"); include "vues/OffreHebergement/vModifierOffreHebergement.php"; } else { include "vues/OffreHebergement/vConsulterOffreHebergement.php"; } break; }
// AFFICHAGE DE LA LIGNE D'EN-TÊTE echo "\n <tr class='enTeteTabQuad'>\n <td width='30%'>Type</td>\n <td width='37%'>Capacité</td>\n <td width='33%'>Nombre de chambres</td> \n </tr>"; // BOUCLE SUR LES TYPES DE CHAMBRES (AFFICHAGE D'UNE LIGNE PAR TYPE DE // CHAMBRE AVEC EN 3ÈME COLONNE LE NOMBRE DE CHAMBRES OFFERTES DANS // L'ÉTABLISSEMENT POUR LE TYPE DE CHAMBRE OU LA VALEUR EN ERREUR LE CAS // ÉCHÉANT) for ($i = 0; $i < count($arrayTypeChambre); $i++) { $unTypeChambre = $arrayTypeChambre[$i]; $idTypeChambre = $unTypeChambre->getId(); $libelle = $unTypeChambre->getLibelle(); echo "\n <tr class='ligneTabQuad'>\n <td>{$idTypeChambre}</td>\n <td>{$libelle}</td>"; // AFFICHAGE DE LA CELLULE NOMBRE DE CHAMBRES OFFERTES // Si on "vient" de ce formulaire (action 'validerModifierOffre') et // que le nombre de chambres pour le type en question est en erreur, // ce nombre est affiché en erreur if ($action == 'validerModifierOffre' && (!estEntier($nbChambres[$i]) || !OffreDAO::estModifOffreCorrecte($idEtab, $idTypeChambre, $nbChambres[$i]))) { echo "\n <td align='center'><input type='text' value='{$nbChambres[$i]}' \n name='nbChambres[{$i}]' maxlength='3' class='erreur'></td>"; } else { // Appel à la fonction obtenirNbOffre pour récupérer le nombre // de chambres offertes $nbOffre = OffreDAO::obtenirNbOffre($idEtab, $idTypeChambre); echo "\n <td align='center'><input type='text' value='{$nbOffre}' \n name='nbChambres[{$i}]' maxlength='3'></td>"; } // Le tableau des différents $idTypeChambre est nécessaire à // cOffreHebergement.php donc on le transmet en champs cachés echo "\n <input type='hidden' value='{$idTypeChambre}' \n name='idTypeChambre[{$i}]'>\n </tr>"; } // Fin de la boucle sur les types de chambres echo "</table>"; // La variable $idEtab et le nombre de lignes du tableau (qui est en fait le // nombre de types de chambres) sont nécessaires àcOffreHebergement.php donc