<?php //*//
/*+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=
Fonctions communes de vérification des données
----------------------------------------------------------
Les fonctions de ce fichier concernent les vérification de format des champs, ou l'exstence de données communes à différentes tables dans la base.
 ces fonctions peuvent être utilisées dans n'importe quel cas.
+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=*/
// estEntier retourne vrai si la valeur transmise ne contient que des chiffres
function CHK_estEntier($valeur) {
   return !ereg("[^0-9]",$valeur);
}
// estChiffresOuEtLettres retourne vrai si la valeur transmise ne contient que des chiffres et/ou des lettres non accentuées.
function CHK_estChiffresOuEtLettres($valeur) {
   return !ereg("[^a-zA-Z0-9]",$valeur);
}

// Si $codePostal a une longueur de 5 caractères et est de type entier, on 
// considère qu'il s'agit d'un code postal
function CHK_estUnCp($codePostal)
{
   // Le code postal doit comporter 5 chiffres
   return strlen($codePostal)== 5 && CHK_estEntier($codePostal);
}

// fct de _gestionBaseFonctionsCommunes modifiées par fk 02/01/2007
// fct de vérification que l'enregistrement identifié par $id existe dans la table $table.
// cette fonction retourne une erreur si $id n'est pas trouvé dans $table ou si $table n'existe pas.
function CHK_estUnId($connexion, $table, $id) {
	$requeteSQL="select id from *table where id='$id'";
	$enreg=DB_chercherEnreg($requeteSQL, $connexion); // rechercher l'enregistrement dans la base
	return $enreg;
}
// fct de vérification que, en création,  le nom existe déjà, ou, en mode modification, le nom n'est pas associé à l'identifiant $id
// peut servirt à vérifier que le nom est nouveau ou que, si'il existe, il est bien associé à l'enregistrement identifié par $id (ce sont les cas d'erreur)
/* cette fonction retourne une erreur si : 
	- on est en création (mode C) et le nom n'est pas trouvé,
	- on est en modification (mode M) et le nom n'est pas trouvé ou est associé avec $id,
	- $table n'existe pas (atention, ceci est un cas d'erreur inexploitable et une faille de la fonction)
*/
function CHK_estUnNom($mode, $table, $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')
		$requeteSQL="select * from $table where nom='$nom'";
	else
		$requeteSQL="select * from $table where nom='$nom' and id!='$id'";
	$enreg=DB_chercherEnreg($requeteSQL, $connexion); // rechercher l'enregistrement dans la base
	return $enreg;
}?>
