Adrien HAUTOT

Bonjour, bienvenue sur mon site internet.
Je suis développeur informatique spécialisé dans l'informatique de gestion et les développements web.
Auto entrepreneur, je suis à votre disposition pour tous vos projets informatiques de développement.

Je vous invite à accéder à la liste de mes projets, à mon CV ou encore à me contacter.

Démonstration comparative de Php-Form

Les deux codes suivants auront le même fonctionnement.

erreur
erreur
Sexe
erreur
erreur
<?php 
	include_once($_SERVER['DOCUMENT_ROOT']."/librairies/Formulaire/Formulaire.class.php");
	$form = new Formulaire("formulaire");
	
	$nom = new Text("nom", "nom", true);
	$nom->setRequis(true, "Le nom doit être saisis.");
	$nom->setToUpper(true);
	$nom->setLabel("Nom");
	
	$prenom = new Text("prenom", "prenom", true);
	$prenom->setRequis(true, "Le prénom doit être saisis.");
	$prenom->setLabel("Prénom");
	
	$homme = new Radio("homme", "sexe", true);
	$homme->setValue("H");
	$homme->setLabel("Homme");
	
	$femme = new Radio("femme", "sexe", true);
	$femme->setValue("F");
	$femme->setLabel("Femme");
	
	$mail = new Mail("mail", "mail", true);
	$mail->setLabel("Mail", "Le mail doit être saisis.");
	$mail->ValidateFormat("Le format de l'adresse mail est incorrect.");
	$mail->setRequis(true);
	
	$envoyer = new Submit("envoyer");
	
	$form->addElements(array($nom, $prenom, $homme, $femme, $mail, $envoyer));
	$form->setTemplate("<table><tr><td>[[nom_label]]</td><td>[[nom]]</td><td>[[nom_erreur]]</td></tr><tr><td>[[prenom_label]]</td><td>[[prenom]]</td><td>[[prenom_erreur]]</td></tr><tr><td>Sexe</td><td><table><tr><td>[[homme]]</td><td>[[homme_label]]</td><td>[[femme]]</td><td>[[femme_label]]</td></tr></table></td><td>[[homme_erreur]]</td></tr><tr><td>[[mail_label]]</td><td>[[mail]]</td><td>[[mail_erreur]]</td></tr><tr><td colspan=\"3\" style=\"text-align: right\">[[envoyer]]</td></tr></table>");
	
	if($form->hasBeenSent()){
		$validateur = new Validateur($form->getElements());
		$message_erreur = $validateur->validate();
		
		if(empty($message_erreur)){
			echo "<div class=\"ui-state-highlight ui-corner-all\" style=\"padding: 0 .7em;\">";
			echo "<span class=\"ui-icon ui-icon-info\" style=\"float: left; margin-right: .3em;\"></span>";
			echo "<strong>Informations : </strong>";
			echo "Formulaire envoyé avec succès</div>";
		}else{
			echo "<div class=\"ui-state-error  ui-corner-all\" style=\"padding: 0 .7em;\">";
			echo "<span class=\"ui-icon ui-icon-alert\" style=\"float: left; margin-right: .3em;\"></span>";
			echo "<strong>Erreur : </strong>";
			echo $message_erreur."</div>";
		}
	}	
	
	echo $form;
?>
<html>
<head>
	<title>Demo php-form</title>
	<script type="text/javascript">		
		/**
		*	Fonction de validation du formulaire
		*/
		function validerFormulaire(){
			retour = true;
			
			var prenom = document.getElementById('prenom').value;
			var nom = document.getElementById('nom').value;
			var mail = document.getElementById('mail').value;
			
			var sexe = document.getElementsByName("sexe"); 
			var checked = false; 
			for (var cpt = 0 ; (cpt < sexe.length) && !checked ; cpt++)
				checked = checked || sexe[cpt].checked; 

			if (!checked) { 
				alert("Sélectionnez votre sexe"); 
				retour = false;
			}
			
			if(nom.length == 0){
				alert('Le nom doit être saisi.');
				retour = false;
			}
			
			if(prenom.length == 0){
				alert('Le prénom doit être saisi.');
				retour = false;
			}
			
			if(mail.length == 0){
				alert("L'adresse mail doit être saisie.");
				retour = false;
			}else if(){
				var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
				if(!reg.test(mail)){
					alert("Le format de l'adresse mail est incorrect.");
					retour = false;
				}
			}
			
			return retour;
		}
	</script>
</head>
<body>
<?php
	//traitement php du formulaire
	if(!empty($_POST['formulaireEnvoye'])){
		$nom = $_POST['nom'];
		$prenom = $_POST['prenom'];
		$mail = $_POST['mail'];
		$sexe = $_POST['sexe'];
		
		//vérification du formulaire
		if(empty($nom))
			$message_erreur = 'Le nom doit être saisi.';
			
		if(empty($prenom))
			$message_erreur = 'Le prénom doit être saisi.';
			
		if(empty($mail))
			$message_erreur = 'L\'adresse mail doit être saisie.';
		else if(filter_var($mail, FILTER_VALIDATE_EMAIL) === false)
			$message_erreur = 'Le format de l\'adresse mail est incorrect.';
		
		if(empty($sexe))
			$message_erreur = 'Le sexe doit être saisi.';
			
		if(empty($message_erreur))
			echo "Formulaire envoyé avec succès";
		else
			echo $message_erreur;
	}	
?>
	<form action="#" method="POST" onsubmit="return validerFormulaire()" name="demoForm">
		<input type="hidden" name="formulaireEnvoye" value="true"/>
		<table>
			<tr>
				<td><label for="nom">Nom</label></td>
				<td><input type="text" name="nom" id="nom" value="<?php echo $nom; ?>"/></td>
			</tr>
			<tr>
				<td><label for="prenom">Prénom</label></td>
				<td><input type="text" name="prenom" id="prenom" value="<?php echo $prenom; ?>"/></td>
			</tr>
			<tr>
				<td>Sexe</td>
				<td>
					<input type="radio" name="sexe" id="homme" value="H" <?php echo($sexe == "H" ? 'checked="checked"' : ""); ?>/>
					<label for="homme">Homme</label>
					<input type="radio" name="sexe" id="femme" value="F" <?php echo($sexe == "F" ? 'checked="checked"' : ""); ?>/>
					<label for="femme">Femme</label>
				</td>
			</tr>
			<tr>
				<td><label for="mail">Mail</label></td>
				<td><input type="text" name="mail" id="mail" value="<?php echo $mail; ?>"/></td>
			</tr>
			<tr>
				<td colspan="2" style="text-align: right">
					<input type="submit" value="Envoyer"/>
				</td>
			</tr>
		</table>
	</form>
</body>
</html>
Copyright © Adrien HAUTOT 2011 - 2012