Commit d39704b9 authored by Nathan Peraldi's avatar Nathan Peraldi

add first version of data verification

parent 09a51e94
<?php
$errors = array(
//Liste des éléments pouvant avoir une erreur
"first selection" => "",
"second Selection" => "",
"nom" => "",
"adresse" => "",
"CP" => "",
"ville" => "",
"tel" => "",
"site" => "",
"periode" => "",
"siret" => "",
"numeroEngagement" => "",
"code" => ""
);
$numberOfErrors = 0;
if (isset($_POST)){
include "traitementAdhesion.php";
echo "<br> début du traitement <br>";
$errors = traitement($_POST,$errors);
echo "<br> fin du traitement <br>";
foreach ($errors as $key => $value){
echo $key . " : " . $value . "<br>";
if (strlen($value)>0){
$numberOfErrors+=1;
}
}
echo "<br> nombre d'erreurs : " . $numberOfErrors . " <br>";
//var_dump($errors);
}
?>
<html lang="fr">
<head>
<title>Renouvellement d'adhésion</title>
......@@ -96,7 +150,7 @@ function createNameClass($variable)
);
$variable = strtr($variable, $chars);
$variable = strtr($variable,$chars);
return $variable;
}
......@@ -166,15 +220,17 @@ sort($classSelectMenu);
sort($classSelectMenuExtended);
?>
<h1>Formulaire de renouvellement d'adhésion</h1>
<p>
<b>Votre catégorie :</b>
</p>
<form action="contact.php" method="post">
<form action="" method="post">
<p>
<label for="firstSelect">Veuillez sélectionner le type de collectivité :</label>
......@@ -351,6 +407,10 @@ sort($classSelectMenuExtended);
</script>
<?php get_footer(); ?>
<?php
get_footer();
?>
</body>
</html>
\ No newline at end of file
<?php
//ce fichier contient les fonctions nécessaires pour générer 12 <option> </option>
//ces options sont utilisées pour sélectionner une période d'un an, 12 choix sont disponibles
function actualMonthYear($plus = 0)
{
//retourne un string : le mois actuel auquel on ajoute $plus et les années à rajouter en fonction
//sous la forme MM/YY
//retourne un string : le numéro du mois actuel auquel on ajoute $plus et les années à rajouter en fonction
//sous la forme MM/01/YY
$month = date("m");
$year = date("y");
......@@ -25,7 +28,10 @@ function actualMonthYear($plus = 0)
function addZero($number)
{
//cette fonction ajoute un zéro à $number s'il le faut
//ajoute un zéro à $number s'il le faut
//exemple : addZero("1") retourne "01"
if (strlen($number) == 1) {
return "0" . $number;
}
......
<?php
/*
* prendre en compte que :
* l'utilisateur peut supprimer un champ
* peut le rendre en non required
* peut modifier le type de champ
* peut renommer un champ et le rendre inconnu
*
*/
function verifEPCI($tab, $errors)
{
if (isset($tab["nombreHabitantsEPCI"])) {
if (isset($tab["nombreCommunesMembresEPCI"])) {
$nombreHab = $tab["nombreHabitantsEPCI"];
$nombreCom = $tab["nombreCommunesMembresEPCI"];
if (is_numeric($nombreHab)) {
if (is_numeric($nombreCom)) {
if ($nombreHab > 0) {
if ($nombreCom > 0) {
}
else{
$errors["EPCI com"] = "Vous devez entrer un nombre positif.";
}
}
else{
$errors["EPCI hab"] = "Vous devez entrer un nombre positif.";
}
}
else{
$errors["EPCI com"] = "Vous devez entrer un nombre.";
}
}
else {
$errors["EPCI hab"] = "Vous devez entrer un nombre.";
}
}
$errors["EPCI hab"] = "Vous devez entrer un nombre.";
}
$errors["EPCI hab"] = "Vous devez entrer un nombre.";
return $errors;
}
function verifNom($tab)
{
//vérifie si le nom de la collectivité est correct
if (isset($tab["nomCollectivite"])) {
$nom = $tab["nomCollectivite"];
if (strlen($nom) > 0) {
if (strlen($nom) < 255) {
return "";
} else {
return "Le nom entré est trop long.";
}
} else {
return "vide";
}
}
return "vide";
}
function verifAdresse($tab)
{
//vérifie si l'adresse est correcte
if (isset($tab["adresseCollectivite"])) {
$adresse = $tab["adresseCollectivite"];
if (strlen($adresse) > 0) {
if (strlen($adresse) < 255) {
return "";
} else {
return "L'adresse entrée est trop longue.";
}
} else {
return "vide";
}
} else {
return "vide";
}
}
function verifCodePostal($tab)
{
//vérifie si le code postal a été correctement entré
if (isset($tab["codePostalCollectivite"])) {
$CP = $tab["codePostalCollectivite"];
if (strlen($CP) > 0) {
if (strlen($CP) == 5 && is_numeric($CP)) {
return "";
} else {
return "Un code postal est composé de 5 chiffres.";
}
} else {
return "vide";
}
} else {
return "vide";
}
}
function verifVille($tab)
{
//vérifie si la ville est correcte
if (isset($tab["villeCollectivite"])) {
$ville = $tab["villeCollectivite"];
if (strlen($ville) > 0) {
if (strlen($ville) < 255) {
$ville = strtolower($ville);
for ($a = 0; $a < strlen($ville); $a++) {
if (!strpos("azertyuiopqsdfghjklmwxcvbnéèàçùâêîôûäëïöü-", $ville[$a])) {
return "Un caractère incorrect a été entré.";
}
}
return "";
} else {
return "La ville entrée est trop longue.";
}
} else {
return "vide";
}
} else {
return "vide";
}
}
function verifTel($tab)
{
if (isset($tab["telCollectivite"])) {
$tel = $tab["telCollectivite"];
if (strlen($tel) > 0) {
//vérifie si le téléphone a été correctement entré
if ((strlen($tel) == 10 && is_numeric($tel)) && $tel[0] == "0") {
return "";
} else {
return "Un numéro de téléphone se compose de 10 chiffres et commence par un zéro.";
}
} else {
return "vide";
}
} else {
return "vide";
}
}
function verifUrl($tab)
{
if (isset($tab["siteCollectivite"])) {
$url = $tab["siteCollectivite"];
if (strlen($url) > 0) {
if (filter_var($url, FILTER_VALIDATE_URL) === true) {
return "";
} else {
return "L'URL est incorrecte.";
}
} else {
return "vide";
}
} else {
return "vide";
}
}
function verifPeriodeAdhesion($tab)
{
if (isset($tab["periodeAdhesionCollectivite"])) {
if (strlen($tab["siteCollectivite"]) > 0) {
return "";
} else {
return "Veuillez sélectionner une période d'adhésion.";
}
} else {
return "Veuillez sélectionner une période d'adhésion.";
}
}
function verifSiret($tab)
{
echo "<br> on vérifie le siret <br> ";
//vérifie si le code postal a été correctement entré
if (isset($tab["siretCollectivite"])) {
$siret = $tab["siretCollectivite"];
if (strlen($siret) > 0) {
if (strlen($siret) == 14 && is_numeric($siret)) {
return "";
} else {
return "Un numéro de SIRET est composé de 14 chiffres.";
}
} else {
return "vide";
}
} else {
return "vide";
}
}
function verifNumeroEngagement($tab)
{
//vérifie si le code postal a été correctement entré
if (isset($tab["numeroEngagementCollectivite"])) {
$numero = $tab["numeroEngagementCollectivite"];
if (strlen($numero) > 0) {
if (is_numeric($numero)) {
return "";
} else {
return "Un numéro d'engagement est composé uniquement de chiffres.";
}
} else {
return "vide";
}
} else {
return "vide";
}
}
function verifCode($tab)
{
//vérifie si le code postal a été correctement entré
if (isset($tab["codeCollectivite"])) {
$code = $tab["codeCollectivite"];
if (strlen($code) > 0) {
if (is_numeric($code)) {
return "";
} else {
return "Un code est composé uniquement de chiffres.";
}
} else {
return "vide";
}
} else {
return "vide";
}
}
function traitementInformations($tab, $errors)
{
//vérifie tous les champs texte
//ces infos sont toujours obligatoires en fin de formulaire donc on fait une fonction tout en un
$errors["nom"] = verifNom($tab);
$errors["adresse"] = verifAdresse($tab);
$errors["CP"] = verifCodePostal($tab);
$errors["ville"] = verifVille($tab);
$errors["tel"] = verifTel($tab);
$errors["site"] = verifUrl($tab);
$errors["siret"] = verifSiret($tab);
$errors["numeroEngagement"] = verifNumeroEngagement($tab);
$errors["code"] = verifCode($tab);
return $errors;
}
function verifSecondSelection($tab, $errors)
{
if (isset($tab["secondSelection"])) {
if($tab["secondSelection"] != "" || $tab["secondSelection"] != "none"){
}
else{
$errors["second Selection"] = "Vous devez sélectionner la taille de votre collectivité.";
}
}
else{
$errors["second Selection"] = "Vous devez sélectionner la taille de votre collectivité.";
}
return $errors;
}
function verifFirstSelection($tab)
{
//on vérifie si le first select est bien validé.
if (isset($tab["firstSelection"])) {
//première sélection présente
if ($tab["firstSelection"] != "none" && $tab["firstSelection"] != "") {
//l'utilisateur a sélectionné quelque chose. mais quoi ?
return true;
} else {
//sélection égale à "none" ou ""
return false;
}
} else {
//première sélection absente du formulaire
return false;
}
}
function traitement($tab,$errors)
{
//le résultat du premier select
if (verifFirstSelection($tab)) {
if ($tab["firstSelection"] == "Association") {
//il n'y a besoin que de traiter les dernières infos
$errors = traitementInformations($tab, $errors);
}
elseif ($tab["firstSelection"] == "EPCIMutualisant"){
$errors = verifEPCI($tab, $errors);
$errors = traitementInformations($tab, $errors);
}
else{
$errors = verifSecondSelection($tab,$errors);
}
} else {
$errors["first selection"] = "Veuillez préciser le type de collectivité.";
}
return $errors;
}
?>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment