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 :

envoyer un mail lors d'événement mysql


Sujet :

Langage PHP

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2017
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2017
    Messages : 4
    Points : 3
    Points
    3
    Par défaut envoyer un mail lors d'événement mysql
    Bonjour à tous,

    besoin d'un petit coup de pouce en php s'il vous plait. tout d'abord désolé pour les fautes d'orthographe, alors voici :

    Partie HTML pour le form


    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
    <?php
    /**
     * Created by PhpStorm.
     * User: ...........
     * Date: 15/08/2017
     * Time: 10:56
     */
     
    require 'connexion_post.php';
    ?>
     
     
    <link rel="stylesheet" href="style.css" type="text/css">
    <div class="container">
        <form id="contact" action="connexion_post.php" method="post">
            <h3>Quick Contact</h3>
            <h4>Contact us today, and get reply with in 24 hours!</h4>
            <fieldset>
                <input placeholder="Your name"  name="name"  type="text" tabindex="1" autofocus>
               <!-- <span class="error"> $name_error </span> -->
            </fieldset>
            <fieldset>
                <input placeholder="Your Email Address" name="email"   type="email" tabindex="2" >
     
            </fieldset>
            <fieldset>
                <input placeholder="Your Phone Number"  name="phone"  type="tel" tabindex="3" >
     
            </fieldset>
            <fieldset>
                <input placeholder="Your Web Site starts with http://"  name="url"  type="url" tabindex="4" >
            </fieldset>
            <fieldset>
                <textarea placeholder="Type your Message Here...."  name="message"  tabindex="5" ></textarea>
     
            </fieldset>
            <fieldset>
                <button name="submit" type="submit" id="contact-submit" data-submit="...Sending">Submit</button>
            </fieldset>
        </form>
    </div>
    Partie php 
     
    <?php
    /**
     * Created by PhpStorm.
     * User: nyzakaria
     * Date: 16/08/2017
     * Time: 09:36
     */
     
    try{
        $bdd = new PDO ('mysql:host=localhost;dbname=tests', 'root', 'root');
    }catch(exception $e){
        die('Erreur :' .$e->getMessage());
    }
     
    $message = $bdd->prepare('INSERT INTO form(name, email, phone, url, message) VALUES (?,?,?,?,?)');
    $message->execute(array($_POST['name'],$_POST['email'],$_POST['phone'],$_POST['url'],$_POST['message'],));
     
    if(isset($_POST['submit'])){
        $to = 'monadressemailàmoi@gmail.com';
        $subject = 'nouveau contact - ';
     
        /*-header-*/
        $headers = 'From : Formulaire de contact du site';
     
        /*-message-*/
        $msg = 'Vous avez une nouvelle demadne d\'information !';
     
        mail($to,$subject,$msg, $headers);
     
        echo"votre message a bien été reçu";
    }else {
        echo "Ops !veuillez essayer encore une fois";
    }
    Alors,

    tout d'abord la page s'affiche normalement, le formulaire et les echo lorsque c'est submité,
    Une fois que je vais sur le formulaire de contact, tout se passe bien, là aussi c'est bon, le formulaire est insérer dans ma base de donnée, à ce second niveau j'ai pas de souci, tout est enregistré dans ma base de donnée, en local.
    Cependant, j'ai du mal à accéder à mon troisième niveau : à savoir recevoir un mail lorsque l'utilisateur a submité son formulaire. (pour l'instant je fais ça en local, y a t il un rapport avec le fait que ma boite mail ne reçois pas ces mails ?)
    voici donc le premier souci exposé.
    J'ai pensé aussi à aller plus loin (mais ça c'est si j'arrive à accéder au 3eme niveau) c'est de faire une joli copie du mail pour l'envoyer à l'utilisateur qui a submité, et cela avec les infos qui l'a laissé dans le formulaire.

    donc insert dans la base de donnée, afficher dans l'email et envoyer l'email.

    Est ce que vous pouvez me donner un ou deux bons petit coup de pouce s'il vous plait ?

    Merci d'avance !

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Est-ce que tu arrives à envoyer un mail en PHP tout court ?
    Si non, alors tout ce que tu nous as décris, ton formulaire, ta base de données, etc. n'a pas de rapport avec le problème que tu rencontres

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2017
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2017
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    Re,
    C'est compris pour le souci de code, promis je n'oublierai plus les balises code quand j'en présente un.

    Pour ce qui est du mail, non c'est la toute première fois que j'essaye de travailler sur la fonction mail.

    l'idée de départ est de recevoir un mail avec les informations des utilisateurs dans le compte gmail de la société, quand un utilisateur rentrer de nouvelles données dans la bdd.

  4. #4
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 691
    Points : 20 230
    Points
    20 230
    Par défaut
    La fonction mail n'envoie pas magiquement un email , il faut que PHP soit configuré (php.ini) pour et/ou qu'un serveur mail soit disponible.
    Sous windows c'est en général pas pratique à mettre en place et sous linux il faut qu'un postfix ou sendmail soit installé et configuré puis configuré dans le php.ini.

    Plus généralement on va utiliser PHPMailer ou Swiftmailer qui permettent d'utiliser des serveurs SMTP directement pour envoyer des mails (gmail outlook, smtp pro ...)

  5. #5
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Test donc déjà l'envoi d'un mail tout court sans utiliser ta base de données.

    Je recommande d'utiliser la classe PHPMailer pour envoyer des mails, cela contourne pas mal de problème qu'on rencontre en utilisant directement la fonction mail().

  6. #6
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2017
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2017
    Messages : 4
    Points : 3
    Points
    3
    Par défaut youraaa phpmailer !!!
    Re,

    Merci d'abord de votre aide et conseils, j'ai pris note de ce que vous m'avez dit.
    J'ai finalement opté pour phpmail, effectivement beaucoup plus simple d'utilisation.
    Du coup, je suis parvenu à la conclusion que ma boite mail est aussi pratique que phpmyadmin.
    Plus besoin de base de donnée.

    Et mon mail s'envoie sans erreur.

    Merci de votre aide,

    à bientôt,

Discussions similaires

  1. [V8] Envoyer des mails aux participants à un évènement
    Par nikkola dans le forum Odoo (ex-OpenERP)
    Réponses: 0
    Dernier message: 06/09/2015, 13h17
  2. [MySQL] Envoyer e-mail avec traitement données MySQL
    Par Little_flower dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 02/10/2007, 10h30
  3. configurer sql pour envoyer des mails
    Par arwen dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 29/07/2003, 15h28

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