IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Formulaire de contact


Sujet :

Langage PHP

  1. #1
    Invité
    Invité(e)
    Par défaut Formulaire de contact
    salut
    tout d'abord il faut savoir que je debute en php !
    je viens de créer un formulaire de contact par le biais de mon site qui est en construction
    pour le formulaire j'utilise trois fichiers :
    un fichier qui est ma page contact.php
    ensuite un fichier formail.php qui contient le code php
    et un fichier merci.php
    ma question est de savoir comment faire pour mettre les champs obligatoire dans mon formulaire?
    je joint les codes:
    fichier contact.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    <div align=center>
    <form method=POST action=formmail.php >
    <p><font size="6"><em><strong><font color="#FF0000">N'h&eacute;sitez pas &agrave; me contacter pour toute demande de renseignement.</font></strong></em></font></p>
    <p><font color="#999999" size="3">utilisez le formulaire ci-dessous.</font> </p>
    <p>
      <input type=hidden name=subject value=formmail>
    </p>
    <table width="454" height="240">
    <tr><td><em><strong><font color="#999999">Votre Nom:</font></strong></em></td>
        <td><input type=text name=realname size=30></td></tr>
    <tr><td><em><strong><font color="#999999">Votre Email:</font></strong></em></td>
        <td><input type=text name=email size=30></td></tr>
    <tr><td><em><strong><font color="#999999">Sujet:</font></strong></em></td>
        <td><input type=text name=title size=30></td></tr>
    <tr>
      <td colspan=2><em><strong><font color="#999999">Votre message :</font></strong></em><br>
      <textarea COLS=50 ROWS=6 name=comments></textarea>
    </td></tr>
    </table>
    <br> <input type=submit value=Envoyer> -
         <input type=reset value=Annuler>
    </form>
    </div>
    fichier formail.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    <?php
    $TO = "scorpion11_22@hotmail.com";
     
    $h  = "From: " . $TO;
     
    $message = "";
     
    while (list($key, $val) = each($HTTP_POST_VARS)) {
      $message .= "$key : $val\n";
    }
     
    mail($TO, $subject, $message, $h);
     
    Header("Location: http://informadream.sud.fr/index.php?page=merci");
     
    ?>
    merci

  2. #2
    Membre régulier
    Inscrit en
    Mai 2002
    Messages
    101
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Mai 2002
    Messages : 101
    Points : 118
    Points
    118
    Par défaut
    Hello,

    Le plus simple est de rajouter une vérification javascript dans ton formulaire HTML que tu appelles lorsque tu cliques sur le bouton Envoyer. Ca évite que le forumlaire soit posté pour vérifier qu'il manque des champs. Tu devrais trouver ça facilement sur le web.

    Si vraiment tu ne veux pas avoir à gérer les formulaires pour lesquels une information n'est pas renseignée, tu peux rajouter une vérification supplémentaire dans formail.php : si l'un des champs est vide, tu rediriges vers la page contact.php en affichant un message d'erreur.

    A+

  3. #3
    Invité
    Invité(e)
    Par défaut
    merci pour ta réponse mais je préfere l'intergré au script de mon fichier formail.php si quelqu'un peut me donner une solution je suis preneur merci

  4. #4
    Membre régulier
    Inscrit en
    Mai 2002
    Messages
    101
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Mai 2002
    Messages : 101
    Points : 118
    Points
    118
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
    <?php
    $fieldEmpty = false;
     
    $TO = "scorpion11_22@hotmail.com"; 
    $h  = "From: " . $TO;
     
    $message = "";
     
    while (list($key, $val) = each($HTTP_POST_VARS)) {
      if($val==""){ $fieldEmpty = true; }
      $message .= "$key : $val\n";
    }
     
    if($fieldEmpty){
        // J'imagine que c'est ton URL, je te laisse corriger au besoin
        Header("Location: http://informadream.sud.fr/contact.php?erreur=1");
    } else {
        mail($TO, $subject, $message, $h); 
        Header("Location: http://informadream.sud.fr/index.php?page=merci");
    }
     
    ?>
    Et au niveau de contact.php, tu ajoutes le traitement de la variable GET "erreur". Si elle vaut 1, tu affiches un message rouge d'erreur sur la page.

    Je te laisse faire évoluer le script si tu veux par exemple définir l'attribut qui est vide, etc.

  5. #5
    Invité
    Invité(e)
    Par défaut
    merci pour ta réponse !! le code fonctionne nickel mais comme je débute vraiment j'ai un souci !
    dans mon index php j'ai ce code qui appelle mes pages et je sais vraiment pas ou ajouter la fonction get ni comment!!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php
    	  	if ($page=="")
    		{
    		include("accueil.php");
    		}
    		else
    		{
    		include("$page.php");
    		}
    	  ?>
    merci

  6. #6
    Membre régulier
    Inscrit en
    Mai 2002
    Messages
    101
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Mai 2002
    Messages : 101
    Points : 118
    Points
    118
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Header("Location: http://informadream.sud.fr/contact.php?page=contact&erreur=1");
    Et sur la page contact.php, tu ajoutes le traitement du GET et le message. Je te laisse chercher un peu maintenant

  7. #7
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 777
    Points
    17 777
    Par défaut
    Petite parenthèse : un tutoriel susceptible de vous intéresser, propose une solution fiable quant à l'envoi d'un mail suite au remplissage d'un formulaire : Envoyer un mail en PHP.

  8. #8
    Invité
    Invité(e)
    Par défaut
    merci pour vos réponses !!
    mais comme je suis tétu je vais essayer de trouver des cours avec des exercices d'applications ! d'ailleur si vous en connaissez je suis preneur !!

Discussions similaires

  1. Réponses: 11
    Dernier message: 10/01/2006, 07h23
  2. [Formulaire] de contact
    Par inferno66667 dans le forum Langage
    Réponses: 6
    Dernier message: 19/12/2005, 19h32
  3. Prob avec formulaire de contact
    Par inferno66667 dans le forum Langage
    Réponses: 1
    Dernier message: 01/12/2005, 18h53
  4. Prob avec PHP sur le formulaire de contact
    Par inferno66667 dans le forum Langage
    Réponses: 7
    Dernier message: 16/11/2005, 17h06
  5. Problème d'accès formulaire de contact
    Par Mystic26 dans le forum Langage
    Réponses: 7
    Dernier message: 16/09/2005, 16h47

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo