Formulaire html et php

Lise -  
LelLex Messages postés 1628 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
Voila je suis débutante en php et je voudrais faire un formulaire de contact html avec vérification et récupération des donnée en php, pour la partie html il n'y a pas de soucis. mais niveau php c'est 0
J'aimerai bien qu' une fois que la personne ai fini de remplir son formulaire il y a une vérification des données et si tout est bien remplis il y a un message qui apparait sur la meme page pour lui confirmer l'envoie de son message sinon un message lui disant de remplir les champs obligatoire.
Un grand Merci
Voici le code en html:

<form action="formulaire.php" method="post" >
<br/>
<TABLE WIDTH="100%" BORDER="0" CELLSPACING="0" CELLPADDING="4" CLASS="content">

<TR>

<TD WIDTH="45%"> First Name:<BR>


<input name="name" type='text' size='25' class="writein">

</TD>

<TD WIDTH="55%"> Family Name:<BR>
<INPUT TYPE="text" NAME="surname" SIZE="25">
</TD>
</TR>


<TR>
<TD WIDTH="45%">Street:<BR>
<INPUT TYPE="text" NAME="street" SIZE="25">
</TD>

<TD WIDTH="55%"> Nr:<BR>

<INPUT TYPE="text" NAME="nrstreet" SIZE="3" >

</TD>

</TR>

<TR>

<TD WIDTH="45%">City:<BR>

<INPUT TYPE="text" NAME="city" SIZE="20">

</TD>

<TD WIDTH="55%">Zip code:<BR>

<INPUT TYPE="text" NAME="zip" SIZE="10" >

</TD>

</TR>

<TR>

<TD WIDTH="45%">Email:<BR>

<INPUT TYPE="text" NAME="email" SIZE="25" >

</TD>

<TD WIDTH="55%">Telephone:<BR>

<INPUT TYPE="text" NAME="tel" SIZE="25" >

</TD>

</TR>

<TR>

<TD COLSPAN="2">Country:<BR>

<SELECT name="choix">

<OPTION selected VALUE="">Country

<OPTION VALUE="Algeria">Algeria

<OPTION VALUE="Zimbabwe">Zimbabwe</option>

</SELECT>


<BR>

</TD>

</TR>

<TR>

<TD COLSPAN="2"> Your Message or Question:<BR>
<textarea name="msg"cols="25" ="" wrap="virtual" rows="10" class="writein" style="width:400px; height:200px;"></textarea>

<br/>

</TD>

</TR>

<TR>

<TD COLSPAN="2">


<INPUT type="submit" NAME="send" VALUE="Send Message" CLASS="form_normal" />

<INPUT TYPE="RESET" NAME="Reset" VALUE="Clear" CLASS="form_normal"/>

</TD>

</TR>

</TABLE>


</TD>

</TR>

</TABLE>

</TD>

<TD WIDTH="181" VALIGN="TOP" CLASS="dotted_v">



</TD>

</TR>

</TABLE>

</form>
A voir également:

4 réponses

xav3601 Messages postés 3289 Date d'inscription   Statut Membre Dernière intervention   311
 
Salut,
Personnelement je ferais ca en JavaScript, ce qui t'éviterais de recharger ta page si les champs ne sont pas tous rempli correctement.
0
LelLex Messages postés 1628 Date d'inscription   Statut Membre Dernière intervention   112
 
Javascript c'est bien joli, mais il ne faut pas négliger le langage côté serveur => PHP.
0
biboo_ Messages postés 1249 Date d'inscription   Statut Membre Dernière intervention   106
 
Si tu peux déléguer côté JavaScript, autant le faire.
En terme de performance, ça permet de retirer pas mal de charge côté traitement serveur..
0
xav3601 Messages postés 3289 Date d'inscription   Statut Membre Dernière intervention   311
 
C'est sur que de toute facon, il y'aura un traitement cote serveur pour gérer la récéption des infos du formulaire et leur traitement!
Mais pour les contrôle, ca me semble plus propice en JS, ca soulage la BP et le travail du serveur comme l'as dis biboo!
0
LelLex Messages postés 1628 Date d'inscription   Statut Membre Dernière intervention   112
 
Ah oui bien sûr, j'avais compris que tu voulais éradiquer PHP.
Ceci dit, quand je vois le morceau du code source, lui donner la solution des conditions php, avec isset par exemple, est mieux adapté ; nan ?! ( dans adapté, il faut entendre : simple ! )
0
xav3601 Messages postés 3289 Date d'inscription   Statut Membre Dernière intervention   311
 
Elle est adapté c'est sur!
Ca répondra à son besoin, mais autant leur apprendre les bonnes manières de suite :-P
0
CRBHD Messages postés 136 Date d'inscription   Statut Membre Dernière intervention   9
 
Je pense que tu devrais trouver ta réponse là :

http://www.php-astux.info/script-formulaire-contact.php

;)
0
hack_net Messages postés 783 Date d'inscription   Statut Membre Dernière intervention   51
 
Avant tout, ton code html n'est pas très propre :p

Sinon, pour ce qui est de la vérification, certes tu peux le faire en JS pour la vérification des champs vide, mais le traitement doit se faire en php... Et puis, il faut quand même une vérification php des champs au cas où le visiteur désactive son javascript...

Grosso-modo, tu as besoin de quoi ?

Du test d'existence de la variable,
Du test de contenance de la variable,
Du test du contenu et du contrôle de la variable,
Et éventuellement de l'envoie de mail...

Pour cela, sache avant tout (si tu ne le sais pas déjà), que tes champs dans le formulaire se transformeront en $_POST['nom_de_champ']...

Après, pour ce qui est des test :
if(isset($_POST['champ1'], $_POST['champ2'], $_POST['etc...'])){ // ceci test si les champs entre parenthèse existent bien...
     if(!empty($_POST['champ1'], $_POST['champ2'], $_POST['etc...'])){ // ceci test si les champs entre parenthèse ne sont PAS vide (le ! est une négation)
          if($_POST['champ1'] == "ce que tu souhaite" && is_numeric($_POST['champ2']) ...){ // ici des test à la foulé. Le premier sert a savoir si ton champ1 est égale à ce que tu désir (attention, == pour tester l'égalité et non = qui sert a affecter un contenu a une variable), le && te permet de dire ET (tu peut utilisé aussi || qui est égale a OU), le deuxième test vérifie si ton champ2 est de type "numérique" (que des chiffres) utile par exemple pour un numéro de téléphone ou une date... Bref fais autant de test que tu souhaite...
               if(mail('ton_mail', 'sujet_du_mail', 'message')){ // test si le mail que tu as définit ici a put être envoyé
                    echo "tout c'est bien passé";
               }
               else{
                    echo "erreur lors de l'envoie du mail";
               }
          }
          else{
               echo "Une condition n'a pas été respectée";
          }
     }
     else{
          echo "Merci de remplir tout les champs obligatoires !";
     }
}
else{
     echo "Merci de valider le formulaire pour accéder a cette page";
     /// ou alors tu met ici ton formulaire...
}


Voila, pour plus de détail sur les test possible, tu tape sur google "tester ... en php" et voilà ;)

A+
0
Utilisateur anonyme
 
Salut,

Je te conseil le javascript, ça évitera que la page soit rechargé ...
0
hack_net Messages postés 783 Date d'inscription   Statut Membre Dernière intervention   51
 
Certes mais comme je le disait plus haut, il suffit que l'utilisateur le désactive pour foutre la pagaille... Et puis, de ce point la, PHP est bien plus performant et simple pour envoyer des mails ;)

A+
0
Utilisateur anonyme
 
Oui mais tu peux dire ensuite que si des valeurs sont vide, alors le serveur ignore les données ;) La majorité des sites utilise le javascript ...
0
xav3601 Messages postés 3289 Date d'inscription   Statut Membre Dernière intervention   311
 
Il y'a un moyen de tester en php si le JS est activé non?
Si c'est le cas l'implémentation des deux serait parfaite ;-)
0
biboo_ Messages postés 1249 Date d'inscription   Statut Membre Dernière intervention   106
 
Javascript, c'est côté client, pas côté serveur.
Donc c'est une erreur de dire que "des sites utilisent le javascript".
0
CRBHD Messages postés 136 Date d'inscription   Statut Membre Dernière intervention   9
 
haha biboo_ il joue sur les mots. Mais c'est juste !

:)
0