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 :

Question concernant l'envoi d'un formulaire par mail


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Décembre 2017
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Belgique

    Informations professionnelles :
    Activité : Technicien Help Desk

    Informations forums :
    Inscription : Décembre 2017
    Messages : 22
    Par défaut Question concernant l'envoi d'un formulaire par mail
    Bonjour à tous,

    J'aimerais créer un formulaire qui enverrait ses données sur un email.
    J'ai trouvé un bout de code qui fait parfaitement le café, mais quand je le met à ma sauce il ne fonctionne plus.
    Pourriez-vous m'éclairer au sujet du problème ?

    Orginale:
    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
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    <!doctype html>
    <html>
     
    <head>
        <meta charset="utf-8">
        <title>Contact</title>
    </head>
     
    <body>
        <h1>Contact</h1>
        <form method="post">
            <label>Nom</label>
            <input type="text" name="nom" required>
            <label>Email</label>
            <input type="email" name="email" required>
            <label>Message</label>
            <textarea name="message" required></textarea>
            <input type="submit">
        </form>
        <?php
        if(isset($_POST['message'])){
            $entete  = 'MIME-Version: 1.0' . "\r\n";
            $entete .= 'Content-type: text/html; charset=utf-8' . "\r\n";
            $entete .= 'From: ' . $_POST['email'] . "\r\n";
     
            $message = '<h1>Message envoyé depuis la page Contact de monsite.fr</h1>
            <p><b>Nom : </b>' . $_POST['nom'] . '<br>
            <b>Email : </b>' . $_POST['email'] . '<br>
            <b>Message : </b>' . $_POST['message'] . '</p>';
     
            $retour = mail('destinataire@free.fr', 'Envoi depuis page Contact', $message, $entete);
            if($retour) {
                echo '<p>Votre message a bien été envoyé.</p>';
            }
        }
        ?>
    </body>
    </html>
    Mon code:
    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
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    <!doctype html>
    <html>
     
    <head>
        <meta charset="utf-8">
        <title>Contact</title>
    </head>
     
    <body>
        <h1>Section Personnel</h1>
        <form method="post">
            <label>Genre : </label>
            <br>
            <input type="radio" value="madame" name="genre" checked>Madame
            <input type="radio" value="monsieur" name="genre">Monsieur
            <br>
            <br>
            <label>Nom : </label>
            <br>
            <input type="text" name="nom">
            <br>
            <br>
            <label>Prénom : </label>
            <br>
            <input type="text" name="prenom">
            <br>
            <br>
            <label>Adresse : </label>
            <br>
            <input type="text" name="adresse">
            <br>
            <br>
            <label>Ville : </label>
            <br>
            <input type="text" name="ville">
            <br>
            <br>
            <label>Code Postal : </label>
            <br>
            <input type="text" name="codepostal">
            <br>
            <br>
            <label>Téléphone : </label>
            <br>
            <input type="text" name="telephone">
            <br>
            <br>
            <label>Mail : </label>
            <br>
            <input type="email" name="email">
            <br>
            <br>
            <label>Remarque : </label>
            <br>
            <textarea name="remarque" cols="30" rows="5"></textarea>
            <br>
            <br>
            <input type="submit">
            <button type="reset">Reset</button>
        </form>
        <?php
        if(isset($_POST['message'])){
            $entete  = 'MIME-Version: 1.0' . "\r\n";
            $entete .= 'Content-type: text/html; charset=utf-8' . "\r\n";
            $entete .= 'From: ' . $_POST['email'] . "\r\n";
     
            $message = '<h1>Message envoyé depuis la page Contact de monsite.fr</h1>
            <p><b>Genre : </b>' . $_POST['genre'] . '<br>
            <b>Nom : </b>' . $_POST['nom'] . '<br>
            <b>Prénom : </b>' . $_POST['prenom'] . '<br>
            <b>Adresse : </b>' . $_POST['adresse'] . '<br>
            <b>Ville : </b>' . $_POST['ville'] . '<br>
            <b>Code Postal : </b>' . $_POST['codepostal'] . '<br>
            <b>Téléphone : </b>' . $_POST['telephone'] . '<br>
            <b>Email : </b>' . $_POST['email'] . '<br>
            <b>Remarque : </b>' . $_POST['remarque'] . '</p>';
     
            $retour = mail('destinataire@free.fr', 'Envoi depuis page Contact', $message, $entete);
            if($retour) {
                echo '<p>Votre message a bien été envoyé.</p>';
            }
        }
        ?>
    </body>
    </html>

  2. #2
    Membre Expert
    Avatar de Droïde Système7
    Homme Profil pro
    Inscrit en
    Septembre 2003
    Messages
    2 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 2 288
    Par défaut
    Bonjour,

    Ton serveur est chez free.fr ?

    Si oui alors : ta fonction mail() est bloquée pour des raisons de sécurité.

    Faut passer par :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <form method="POST" name="myFormFree" action="http://perso0.free.fr//cgi-bin/form2mail.pl">
    Part conséquent, ton header = tu l'oublies


    DS7

  3. #3
    Membre averti
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Décembre 2017
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Belgique

    Informations professionnelles :
    Activité : Technicien Help Desk

    Informations forums :
    Inscription : Décembre 2017
    Messages : 22
    Par défaut
    Citation Envoyé par Droïde Système7 Voir le message
    Bonjour,

    Ton serveur est chez free.fr ?
    Non il est cher OVH et comme dis plus haut la première version du code fonctionne, mais pas la seconde. Je ne vois pas d'où provient le problème.

  4. #4
    Membre Expert
    Avatar de Droïde Système7
    Homme Profil pro
    Inscrit en
    Septembre 2003
    Messages
    2 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 2 288
    Par défaut
    En ce cas voici la chose interdite :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     $retour = mail('destinataire@free.fr',
    Car tu sors du domaine !

    Place une adresse OVH afin de te convaincre.

    DS7

  5. #5
    Membre averti
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Décembre 2017
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Belgique

    Informations professionnelles :
    Activité : Technicien Help Desk

    Informations forums :
    Inscription : Décembre 2017
    Messages : 22
    Par défaut
    Citation Envoyé par Droïde Système7 Voir le message
    En ce cas voici la chose interdite :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     $retour = mail('destinataire@free.fr',
    Car tu sors du domaine !

    Place une adresse OVH afin de te convaincre.

    DS7
    Chose interdit ?
    Sors du domaine ?
    Afin de me convaincre ?

    Je t'avoue que je comprends pas grand chose.. En gros, moi j'aimerais simplement savoir ce qui différencie du code originale au mien ?
    J'ai fais des test avec le code originale avec comme domaine monadresse@mail.com et ce la fonctionna correctement, mais avec mon formulaire il ne fonctionne plus.

  6. #6
    Membre Expert
    Avatar de Droïde Système7
    Homme Profil pro
    Inscrit en
    Septembre 2003
    Messages
    2 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 2 288
    Par défaut
    Remplace l'e-mail free.fr de ton formulaire, contre celle du domaine OVH, nous en reparlerons ensuite

    DS7

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

Discussions similaires

  1. Envoie d'un formulaire par mail en PHP
    Par Polychinelle dans le forum Langage
    Réponses: 9
    Dernier message: 28/12/2015, 10h49
  2. Envoi d'un formulaire par mail
    Par Néoservices dans le forum Langage
    Réponses: 0
    Dernier message: 30/09/2013, 15h46
  3. Envoi d'un formulaire par mail
    Par jer75 dans le forum Langage
    Réponses: 1
    Dernier message: 02/05/2008, 21h46
  4. Envoi d'un formulaire par mail
    Par Leimi dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 02/08/2007, 15h59
  5. [Indy] Questions concernant l'envoi de mail
    Par delphicrous dans le forum Web & réseau
    Réponses: 3
    Dernier message: 24/06/2004, 15h06

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