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 [Débutant(e)]


Sujet :

Langage PHP

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2005
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 5
    Points : 3
    Points
    3
    Par défaut Formulaire de contact
    Bonjour a tous,

    Je n'y connais strictement rien en PHP, alors je viens demander un peut d'aide ici.

    Je voudrai pour un petit site perso faire un formulaire de contact très simple, j'ai trouvé un exemple sur le net qui correspond a ce que je cherche, mais il a un défaut, il m'envoie les mails de la part de moi même.

    le script PHP :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <?php
    $TO = "MON@ADRESSE.MAIL";
    $h  = "From: " . $TO;
    $message = "";
    while (list($key, $val) = each($HTTP_POST_VARS))
    {
      $message .= "$key : $val\n";
    }
    mail($TO, SUJET_PREDEFINI, $message, $h);
    Header("Location: http://...MAIL_ENVOYE");
    ?>
    Le formulaire HTTP :
    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
    <form method=POST action=mail.php >
                    <table>
                      <tr>
                        <td>Name :</td>
                        <td><input type=text name=nom size=42></td>
                      </tr>
                      <tr>
                        <td>E-mail :</td>
                        <td><input type=text name=email size=42></td>
                      </tr>
                      <tr>
                        <td colspan=2><textarea COLS=50 ROWS=10 name=comments></textarea>
                        </td>
                      </tr>
                    </table>
                    <br>
                    <input type=submit value=envoi>
                    -
                    <input type=reset value=Reset>
                  </form>

    Sinon on m'as proposé aussi un "vérificateur de syntaxe d'email" ce qui en soit a l'air super, mais je n'arrive pas a l'intégrer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if( !preg_match("/^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/",$from) )
    {
    Header("Location: http://...MAUVAIS_MAIL.html");
    }
    Je me répète je n'y comprend strictement rien au PHP ou presque évitez les réponses trop "imagées" SVP

    Bonne et heureuse année a tous

  2. #2
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219
    Par défaut
    Salut et bienvenue dans les forums de Developpez.com !
    il m'envoie les mails de la part de moi même.
    Effectivement. Dans l'en-tête d'un mail, "TO" est le destinataire et "FROM", l'expéditeur. Hors, tu ne spécifies pas le destinataire, mais seulement l'expéditeur... Attention aussi à l'utilisation des majuscules, car les adresses mails sont sensibles à la casse.

    En fait, je te conseille vivement l'utilisation de l'excelente librairie PHPMAILER pour envoyer des mails. Tu trouveras le lien de téléchargement et un exemple d'envoi de mail avec ajoût de pièces jointes dans ce post. Il faut garder à l'esprit que c'est une démo car si tu laisses ce genre de formulaire installé sur ton site, n'importe qui pourrait l'utiliser pour envoyer des mails. C'est important la sécurité lorsqu'on fait du développement web, c'est d'ailleurs ça qu'il faut connaître avant tout le reste. Il ya quelques cours sur le forum à ce propos...

    http://php.developpez.com/cours/?page=securite

    Si tu as d'autres questions, n'hésite pas, sinon, ajoute le tag [Résolu] au sujet (en cliquant sur le bouton tout en bas à gauche de cette page).

    à+

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2005
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par Sub0 Voir le message
    Effectivement. Dans l'en-tête d'un mail, "TO" est le destinataire et "FROM", l'expéditeur. Hors, tu ne spécifies pas le destinataire, mais seulement l'expéditeur...
    J'avais vu ça...
    Comment définir le destinataire du coup ?

    Sinon PhpMailer a l'air bien mais beaucoup trop complexe pour ce que je recherche

    Merci beaucoup

  4. #4
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219
    Par défaut
    L'adresse du destinataire est définit dans le 1er paramètre de la fonction mail().

    http://a-pellegrini.developpez.com/t...php/mail/#L3.1

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2005
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par Sub0 Voir le message
    L'adresse du destinataire est définit dans le 1er paramètre de la fonction mail().
    Oui ca j'avais compris
    Je me suis peut être mal exprimé.

    J'aimerai remplacer
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $h  = "From: " . "adresse email saisie dans le formulaire";
    Et dans le lien que tu me passe il y a justement ce soucis d'expéditeur qui sera pour le coup CGImailer.
    En dessous il y a bien ce que je cherche par contre mais je ne saurait l'adapter pour mon script...

    C'est possible ?

    Merci

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 106
    Points : 79
    Points
    79
    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
    <?php
    if( preg_match("/^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/",$_POST['email']) ) 
    {
    $TO = "MON@ADRESSE.MAIL";
    $h  = "From: " . $_POST['email'];
    $message = "";
    while (list($key, $val) = each($HTTP_POST_VARS))
    {
      $message .= "$key : $val\n";
    }
    mail($TO, SUJET_PREDEFINI, $message, $h);
    Header("Location: http://...MAIL_ENVOYE");
    }
     
    else {
    echo "adresse mail non valide";
    }
    ?>

  7. #7
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2005
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    ça fonctionne et très bien

    Bonne année et MERCI beaucoup Istrella

    RÉSOLU

+ Répondre à la discussion
Cette discussion est résolue.

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