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 :

problème de formulaire et envoi


Sujet :

Langage PHP

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 18
    Points : 8
    Points
    8
    Par défaut problème de formulaire et envoi
    Bonjour à tous et à toutes

    Je m'adresse à vous car j'ai un petit problème au niveau d'un formulaire.
    Le problème est lors de l'envoi, en effet je ne reçois rien.

    J'ai crée le formulaire HTML

    Code html : 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
    <form method=POST action=envoi.php >
    <input type=hidden name=subject value=envoi>
    <table>
    <tr><td>Votre Nom:</td>
    <td><input type=text name=realname size=30></td></tr>
    <tr><td>Votre Email:</td>
    <td><input type=text name=email size=30></td></tr>
    <tr><td>Sujet:</td>
    <td><input type=text name=title size=30></td></tr>
    <tr><td colspan=2>Commentaires:<br>
    <textarea COLS=50 ROWS=6 name=comments></textarea>
    </td></tr>
    </table>
    <br> <input type=submit value=Envoyer> -
    <input type=reset value=Annuler>
    </form>
    et je l'envoie grâce au fichier envoi.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 = "monadressemail";
     
    $h = "From: " . $TO;
     
    $message = "";
     
    while (list($key, $val) = each($HTTP_POST_VARS)) {
    $message .= "$key : $val\n";
    }
     
    mail($TO, $subject, $message, $h);
     
    Header("Location: http://ladressequejaicree.php");
     
    ?>

    Donc voila le code, je ne sais pas d'ou vient le problème j'ai fait plusieurs tests avec différentes adresses...
    Peut il venir de l'hébergeur?

    Sinon existerait-il un code pour faire cette simple demande? (juste recevoir des emails à partir d'un formulaire)

    Je remercie les personnes qui prendront le temps de lire et de m'aider

    bonne soirée

  2. #2
    Invité
    Invité(e)
    Par défaut
    Sur ton script envoi.php, il faut que tu récupère les données saisies dans le formulaire via la méthode POST.

    Je pense que tu devrais essayer déjà en local et voir après si ton hébergeur autorise la fonction mail.

  3. #3
    Invité
    Invité(e)
    Par défaut
    Ha ok HTTP_POST_VARS c'est pas un peu dépassé ça ?

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 18
    Points : 8
    Points
    8
    Par défaut
    Merci pour ta réponse.

    Que penses tu de ce 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
    <?php
    if(isset($_POST["Valider"]))
    {
    $lechamp1 = stripslashes($_POST["champ1"]);
    $lechamp2 = stripslashes($_POST["champ2"]);
    $lechamp3 = stripslashes($_POST["champ3"]);
     
    if(empty($lechamp1)){
    echo 'Le champ1 est vide. <br/>';
    }
    else if(empty($lechamp2)){
    echo 'Le champ2 est vide.<br/>';
    }
    else if(empty($lechamp3)){
    echo 'Le champ3 est vide.<br/>';
    }
    else
    {
    $mon_email = "votre_email@free.fr";
    $mon_pseudo = "votre_pseudo";
    $mon_url = "http://url_de_votre_site.fr";
    $son_email = ''.$lechamp3.'';
     
    // Envoie du mail
    $entete = "From: " . $mon_pseudo . " <" . $son_email . ">\n";
    $entete .= "MIME-Version: 1.0";
    if (@mail($mon_email,$lechamp1,$lechamp2,$entete))
    { 
    echo "Votre message a été envoyé.<br />\n"; 
    echo "<a href=\"" . $mon_url . "\">Retour</a>\n"; 
    }
    else 
    { 
    echo "Un problème s'est produit lors de l'envoi du message.\n";
    echo "<a href=\"".$_SERVER["PHP_SELF"]."\">Réessayez</a>\n";
    }
    //on ferme le else
    }
    //on ferme if(isset($_POST["Valider"]))
    }
    ?>

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 18
    Points : 8
    Points
    8
    Par défaut
    je n'ai pas crée les variables pour recevoir les données?

    alors que sur le deuxième code c'est bon?

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 18
    Points : 8
    Points
    8
    Par défaut
    j'ai teste le deuxieme code ca m'affiche la fonction dans une autre page

    echo "Un problème s'est produit lors de l'envoi du message.\n";

    je ne sais pas

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 18
    Points : 8
    Points
    8
    Par défaut
    voila a nouveau ce que j'ai éssayé

    mon formulaire

    Code html : 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
     <form method=POST action=envoi.php >
                <input type=hidden name=subject value=envoi>
                <table>
                <tr><td>Votre Nom:</td>
                    <td><input type=text name=realname size=30></td></tr>
                <tr><td>Votre Email:</td>
                    <td><input type=text name=email size=30></td></tr>
                <tr><td>Sujet:</td>
                    <td><input type=text name=title size=30></td></tr>
                <tr><td colspan=2>Commentaires:<br>
                  <textarea COLS=50 ROWS=6 name=comments></textarea>
                </td></tr>
                </table>
                <br> <input type=submit value=Envoyer> -
                     <input type=reset value=Annuler>
     </form>


    mon envoi.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
    24
    25
    26
    27
    28
    29
    30
    31
    <?php
     
     
    $adresse = "adresse email";
    $site = "www.site.fr;
    
    $TO = $adresse;
    
    $head = "From: ".$adresse."\n";
    $head .= "X-Sender: <".$adresse.">\n";
    $head .= "X-Mailer: PHP\n";
    $head .= "Return-Path: <".$adresse.">\n";
    $head .= "Content-Type: text/plain; charset=iso-8859-1\n";
    
    $sujet = "Formulaire de contact";
    
    $informations = "
    Nom: ".$_POST['realname']." \r\n
    Email du formulaire: ".$_POST['email']." \r\n
    Sujet du formulaire: ".$_POST['title']."\r\n
    Message: ".$_POST['comments']." \r\n
    ";
    
    $res = mail($TO, $sujet ,$informations, $head);
    
    if (true == $res) {
    Header("Location: http://www.google.fr" );
    } else {
    Header("Location: http://www.yahoo.fr" );
    }
    ?>

    ca me renvoi sur la page erreur = yahoo

    a l'aide svp

  8. #8
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 18
    Points : 8
    Points
    8
    Par défaut
    je ne trouve pas la solution j'ai réessayé et j'ai toujours le même probleme.

Discussions similaires

  1. Problème lors de l'envoie d'un formulaire
    Par Gjumi dans le forum Débuter avec Java
    Réponses: 2
    Dernier message: 20/08/2009, 18h10
  2. [MySQL] problème lors de l'envoi de mon formulaire
    Par cdevl32 dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 04/03/2009, 18h19
  3. problème lors de l'envoi d'un formulaire
    Par fk04 dans le forum Servlets/JSP
    Réponses: 6
    Dernier message: 15/04/2007, 21h00
  4. Réponses: 11
    Dernier message: 10/07/2006, 16h17
  5. [AJAX] AJAX et envoie de données d'un formulaire
    Par gunderam dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 14/06/2006, 18h17

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