Vérification de formulaire en php

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

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.