Vérification de formulaire en php

Soyez le premier à donner votre avis sur cette source.

Vue 10 685 fois - Téléchargée 2 058 fois

Description

Ce code est une vérification de formulaire. L'algo est basé sur une première vérification en javascript. Le code est commenté afin de faciliter sa compréhension.

Source / Exemple :


<?php
					// Affiche les variables transmises
					/*if(isset($_POST['btn_envoi'])){
						echo var_dump($_POST);
					}*/

					// VERIFICATION FORMULAIRE
					if(isset($_POST['btn_envoi'])){
						$societe=trim($_POST['societe']);
						$civi=trim($_POST['civi']);						
						$nom=trim($_POST['nom']);
						$prenom=trim($_POST['prenom']);
						$mail=trim($_POST['mail']);						
						$tel=trim($_POST['tel']);
						$mob=trim($_POST['mob']);	
						$obj=trim($_POST['obj']);	
						$dmd=trim($_POST['dmd']);
						$antispam=trim($_POST['antispam']);							
						
						if(!empty($societe) && !empty($nom) && !is_numeric($nom) && !empty($prenom) && !is_numeric($prenom) && !empty($dmd) && $antispam=='2' ){
							
							// Sécurisation : convertir les caractères spéciaux en texte et éviter les \ devant les '
							$societe=htmlspecialchars(stripcslashes($societe));
							$nom=htmlspecialchars(stripcslashes($nom));
							$prenom=htmlspecialchars(stripcslashes($prenom));
							$mail=htmlspecialchars(stripcslashes($mail));
							$tel=htmlspecialchars(stripcslashes($tel));
							$mob=htmlspecialchars(stripcslashes($mob));
							$obj=htmlspecialchars(stripcslashes($obj));
							$dmd=htmlspecialchars(stripcslashes($dmd));
							
							
							// Conception du message
							$mail_dest='mon_adresse@gmail.com';
							$sujet=$obj.' via monsite.com';
							$message='Vous avez reçu un message de la société : '.$societe.'<br />'.$civi.' '.$prenom.' '.$nom.'<br />'.$mail.'<br />Téléphone : '.$tel.'<br />Portable : '.$mob.'<br />Message : '.$dmd;
							
							// Permet d'envoyer le mail au format HTML + obtenir le mail utilisateur
							$headers='to: '.$mail."\r\n";
							$headers.='from: <'.$mail.'>'."\r\n";
							$headers.='MIME-VERSION:1.0'."\r\n";
							$headers.='content-type: text/html; charset="iso-8859-1"'."\r\n";
							$message=wordwrap($message,70);
							
							// Envoi du mail (utilisation de la fonction mail de php)
							if(mail($mail_dest,$sujet,$message,$headers)){
								echo '<center>Mail envoyé, merci</center>';
							}else{
								echo '<center>Mail non envoyé, merci de réessayer plus tard</center>';
							}
							
					// L'utilisateur n'est pas passé par le contrôle Javascript
					}else{
						echo '<center>Merci de réactiver les scripts</center>' ;
						}
					}		
				?>

Conclusion :


Ce code permet de faire une vérification simple de formulaire afin d'éviter les injection de script.
Il est préférable de faire un contrôle en amont en JS (je mettrais le code en ligne prochainnement) afin d'éviter le rechargement de la page en cas d'erreur sur la page.
Ce code est fonctionnel, c'est d'ailleurs celui que j'utilise sur mon site perso.

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Messages postés
27
Date d'inscription
lundi 12 avril 2010
Statut
Membre
Dernière intervention
15 octobre 2011

Je suis un peu de cet avis, la source est très orientée. A ce compte-là, poste également le formulaire, comme ça, on a "l'unité fonctionnelle" complète.
Messages postés
14
Date d'inscription
mercredi 23 février 2011
Statut
Membre
Dernière intervention
12 août 2011

Tu ne peux pas te baser sur JavaScript pour valider tes données (par exemple l'email) car JavaScript n'est pas obligatoire et l'utilisateur à la possibilité de le désactiver dans son navigateur.
Un autre truc, il se passe quoi si je fais mon propre formulaire et que je décide d'envoyer autre chose ou d'omettre des champs. ça plante.
Bref faut revoir la copie car là c'est inutilisable.
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
40
Je ne sais pas ou tu vois du java.

J'ai passé la source en débutant.
Messages postés
3
Date d'inscription
dimanche 12 juin 2011
Statut
Membre
Dernière intervention
16 décembre 2012

bonjour
pas du tiut mal, mais ça passe bien sur un site perso! pouquoi etre parti du Java?
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
40
Bonjour,

Je suis du même avis : cette source n'est pas travaillée, elle ne vaut pas le niveau initié.
Afficher les 7 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.