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");
    }
}
示例#2
0
/**
 * 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