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

PHP & Base de données Discussion :

envoyer un mail dès qu'on poste un élément [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 90
    Points : 54
    Points
    54
    Par défaut envoyer un mail dès qu'on poste un élément
    Bonjour,

    J'ai un organisme qui peut poster des évènements. Dès qu'un organisme poste un évènement, je veux pouvoir envoyer un mail contenant l'adresse du lien du nouvel évènement qui vient être ajouté à tous ceux qui se sont abonnés à la newsletter.
    Le problème c'est que je n'arrive pas à envoyer l'évènement qui vient d'être ajouté. Cela envoie un mail contenant un évènement qui se trouvait déjà dans la base de données

    voici mes deux tables

    Code SQL : 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
     
    create table ORGANISME
    (
    No_organisme INT AUTO_INCREMENT PRIMARY KEY,
    Login_organisme VARCHAR(20),
    Password_organisme VARCHAR(25),
    Email_contact VARCHAR(50),
    Newsletter VARCHAR(20)
    );
     
     
    create table EVENEMENT
    (
    No_evenement INT AUTO_INCREMENT PRIMARY KEY,
    Nom_ev VARCHAR(20),
    No_organisme INT,
    CONSTRAINT const1 FOREIGN KEY (No_organisme) REFERENCES ORGANISME (No_organisme)
    )type=INNODB;

    voici un extrait de mon formulaire évènement
    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
     
     //j'ajoute un évènement
    ajouter_evenement($Nom_ev);
    echo "ajout reussi";	
     
    // On sélectionne les adresses mail des organismes
    $retour = requete_sql('SELECT Email_contact,Nom_ev,No_evenement FROM ORGANISME,EVENEMENT WHERE ORGANISME.No_organisme=EVENEMENT.No_organisme AND Newsletter="Oui" '); 
    if ($donnees = mysql_fetch_array($retour))
    {
     
    $message = 'Il y a un nouvel évènement qui a été rajouté
     <html>
    <head>
     
    </head>
    <body>
    <a href="http://webcofeee.no-ip.org:14000/Gestion%20des%20evenements/index.php?page=formulaire/information_complementaire&No_evenement='.$donnees['No_evenement'].'" >'.$donnees['Nom_ev'].'</a>';
    echo "</body>";
    echo" </html>";
     
     
    $headers  = 'MIME-Version: 1.0' . "\r\n";
    $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
     
    mail($donnees['Email_contact'], $_POST['Nom_ev'],$message,$headers);
     
    }

  2. #2
    Membre habitué
    Inscrit en
    Janvier 2007
    Messages
    437
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 437
    Points : 184
    Points
    184
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $message = 'Il y a un nouvel évènement qui a été rajouté

    tu doit obligatoirement fermer avec le guillemet, puis finir avec un ;


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $message = 'Il y a un nouvel évènement qui a été rajouté';

    Puis essaye avec while()

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 90
    Points : 54
    Points
    54
    Par défaut
    ben justement avec une while, cela envoie tous les évènements qui se trouvent dans ma base de données + celui que je viens de poster
    mais moi je veux que ce soit uniquement celui que je viens de poster

  4. #4
    Membre éprouvé
    Avatar de viviboss
    Profil pro
    Inscrit en
    Août 2006
    Messages
    943
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Août 2006
    Messages : 943
    Points : 1 248
    Points
    1 248
    Par défaut
    Essaye de prendre le MAX de no_evenement, qui correspond forcément à ton dernier évènement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT MAX(No_evenement) as evenement, Email_contact,Nom_ev FROM ORGANISME,EVENEMENT WHERE ORGANISME.No_organisme=EVENEMENT.No_organisme AND Newsletter="Oui"
    Comme ca, il te sortira qu'un résultat, tu n'auras pas à utiliser le While, et puis ce sera toujours le dernier evenement respectant tes conditions....

    Maintenant, je n'ai jamais utilisé les relations avec MySQL & innodb, donc peut-être ca marchera pas aussi facilement, mais le concept est là : utilise le MAX de No_evenement....

    Bonne chance !!!
    Veni Vidi Vici
    -------------------------
    Mes articles : developpez.com ou bien vbview.net
    -------------------------
    Et SURTOUT ne pas oublier la bible PHP : --> php_manual_fr.chm!!!
    Et aussi : --> pear_manual_fr.chm!!!

    Ou encore : --> Les tutoriaux & cours PHP de Développez.com
    -------------------------

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

Discussions similaires

  1. [phpBB] Envoyer un mail lorsqu'un message est posté
    Par philegue dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 14/03/2007, 20h57
  2. envoyer un mail avec mon programme
    Par shrek dans le forum C++Builder
    Réponses: 8
    Dernier message: 06/12/2006, 12h27
  3. [Debutant(e)]envoyer un mail en jsp
    Par SegmentationFault dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 19/01/2004, 18h28
  4. 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