1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165
|
<?php
// on se connecte à MySQL
$oConnect = mysql_connect("localhost", "root", "")or die("Impossible de se connecter : " . mysql_error());
// on sélectionne la base
$oSelectDb = mysql_select_db("SI2I", $oConnect); // $oConnect pour connexion à plusieurs bdd
//------------------------------------------------------
//Déclaration des variables à poster dans le formulaire
$id=$_POST['id'];
$nom=$_POST['nom'];
if(isset($nom)){htmlentities($nom, ENT_QUOTES);}
$prenom=$_POST['prenom'];
if(isset($prenom)){htmlentities($prenom, ENT_QUOTES);}
$adresse=$_POST['adresse'];
if(isset($adresse)){htmlentities($adresse, ENT_QUOTES);}
$code_postal=$_POST['code_postal'];
if(isset($code_postal)){htmlentities($code_postal, ENT_QUOTES);}
$ville=$_POST['ville'];
if(isset($ville)){htmlentities($ville, ENT_QUOTES);}
$telephone=$_POST['telephone'];
if(isset($telephone)){htmlentities($telephone, ENT_QUOTES);}
$fax=$_POST['fax'];
if(isset($fax)){htmlentities($fax, ENT_QUOTES);}
$email=$_POST['email'];
if(isset($email)){htmlentities($email, ENT_QUOTES);}
$client=$_POST['client'];
if(isset($client)){htmlentities($client, ENT_QUOTES);}
$aSite=$_POST['site'];
if(isset($aSite)){array_map("htmlentities", $aSite);}
$aDemande=$_POST['demande'];
if(isset($aDemande)){array_map("htmlentities", $aDemande);}
$devis=$_POST['devis'];
if(isset($devis)){htmlentities($devis, ENT_QUOTES);}
$contact=$_POST['contact'];
if(isset($contact)){htmlentities($contact, ENT_QUOTES);}
// Gestion affichage des checkbox site et demande dans formulaire et dans bdd
//site
$sSQL = "SELECT n_site FROM site ORDER BY n_site" ;
$qSite1 = mysql_query($sSQL);
$site_nbre = mysql_num_rows($qSite1);
$sSQLSite = "SELECT * FROM site ORDER BY n_site";
$qSite2 = mysql_query($sSQLSite);
//demande
while($aData = mysql_fetch_array($qDemande)){ }
$sSQLDemande = "SELECT * FROM demande ORDER BY n_demande";
$qDemande = mysql_query($sSQLDemande);
//-----------------------------------------------------------
// Traitement des données du formulaire
/**
*
* Si formulaire posté Alors
* Si données valide Alors
* enregistrer en base de donnée et dire que ça marche uniquement le message, le formulaire doit disparaitre !
* Sinon
* Afficher le formulaire avec les valeurs que l'utilisateur a inscrite + message que tous les champs ne sont pas valides
* Fin Si
* Fin Si
*
*/
$etat='affichage'; // état par défaut du formulaire lorsqu'aucune saisie n'a été effectué
if(isset($_POST['valider'])){
if ((VerifierNom($nom) === true) && (VerifierPrenom($prenom) === true) && (VerifierAdresse($adresse) === true) && (VerifierCodePostal($code_postal) === true) &&
(VerifierVille($ville) === true) && (VerifierTelephone($telephone) === true) && (VerifierFax($fax) === true) && (VerifierEmail($email) === true) && ($client==='0' ||
$client==='1') && isset($aSite) && isset($aDemande) && ($devis==='0' || $devis==='1') && ($contact==='0' || $contact==='1')){
$etat='attente'; // toutes les données ont bien été saisies mais il reste à vérifier l'unicité
}
}
if ($etat=='attente'){ // vérification de l'unicité du nom, du prénom et de l'email avant envoi
$result = mysql_query("
SELECT nom, prenom, email
FROM formulaire
WHERE nom = '" . $_POST["nom"] . "'
AND prenom = '" . $_POST["prenom"] . "'
AND email = '" . $_POST["email"] . "'
");
// si un enregistrement est trouvé
if(mysql_num_rows($result) > 0)
{
while($row = mysql_fetch_array($result))
{
if($_POST["nom"] == $row["nom"] && $_POST["prenom"] == $row["prenom"] && $_POST["email"] == $row["email"])
{
$MsgEchecNPE="Le nom ". $_POST["nom"] .", le prénom " . $_POST["prenom"] ." et l'adresse email " . $_POST["email"] ." sont déjà utilisés"."</br>";
}
else if($_POST["nom"] == $row["nom"] && $_POST["email"] == $row["email"])
{
$MsgEchecNE="Le nom " . $_POST["nom"] ." et l'adresse email " . $_POST["email"] ." sont déjà utilisés"."</br>";
}
else if($_POST["email"] == $row["email"])
{
$MsgEchecE="L'adresse email " . $_POST["email"] ." est déjà utilisée"."</br>";
}
}
}
else $etat="envoi";
}
//-----------------------------------------------------------
if($etat=='envoi'){ //requêtes pour insertion des données dans la bdd étant donné que toutes les données ont été validées
$sql = "INSERT INTO formulaire(id, nom, prenom, adresse, code_postal, ville, telephone, fax, email, devis, contact)
VALUES('','$nom','$prenom','$adresse','$code_postal','$ville','$telephone','$fax','$email', '$devis', '$contact')";
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
$id_formulaire = mysql_insert_id();// on récupère l'id_formulaire qui vient d'être généré
if(isset($aSite)){
foreach($aSite as $n_site){
$sql = "INSERT INTO siteformulaire(id_formulaire, id_site) VALUES ('$id_formulaire','$n_site')";
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
}
}
if(isset($aDemande)){
foreach($aDemande as $n_demande){
$sql = "INSERT INTO demandeformulaire(id_formulaire, id_demande) VALUES ('$id_formulaire','$n_demande')";
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
}
}
}
?> |
Partager