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 :

Création mail suivant table [PDO]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Février 2009
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 43
    Par défaut Création mail suivant table
    bonjour à tous,
    Je suis complétement en panne, je cherche à créer des mails (plusieurs à la fois suivant une table remplie auparavant.
    Voici la table:
    Nom : sql.png
Affichages : 148
Taille : 46,4 Ko
    donc dans le prinicpe , pour la base d'abbaretz envoyer un mail avec liste de pièces (ici 2 lignes) , puis pour cherre (ici 6lignes ) et ainsi de suite, et ne pas envoyer de mail à chaque ligne, sinon, bien sur une meme base pourrait recevoir 5 mails avec une seule ligne de pièce.
    La je galère je ne trouve pas comment extraire ces données et les transmettre par mail.
    Merci d'avance pour votre aide.

  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
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    // on recolte les données 
    while ($row = $sth->fetch(PDO::FETCH_ASSOC)) {
        $data[$row['Base']] .= $row['Désignations'] . ' : ' . $row['Qté'] . '<br/>';
    }
     
    // on envoie les mails 
    foreach ($data as $base=>$contenu) {
       echo 'envoyer un mail à ' . $base . ' pour <br/>' . $contenu;
    }
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre averti
    Inscrit en
    Février 2009
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 43
    Par défaut
    Merci à toi,
    Vu le Mp et j'y ferai attention à l'avenir.
    Donc en passant par ton code, j'obtiens bien ce que je veux.
    Maintenant, je cherche comment faire pour créer un bouton pour chaque base ayant des pièces et que le clic sur chaque bouton envoi le mail préparé suivant le résultat de la requête.
    En codant comme je pouvais, j'ai presque réussi en mailto mais le mailto reste au format texte donc les </br> de la requête apparaissent.
    Merci d'avance pour vos idées.

  4. #4
    Membre averti
    Inscrit en
    Février 2009
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 43
    Par défaut
    Donc j'ai modofié ma façon de faire.
    Mais je bloque.
    Suivant la méthode à Sabotage, je procède comme suit :
    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
        <div id="contenu"> 
    <?php
    require('shared.php');
    $requete="SELECT choixbase, articles, designations, qte, casiers, qui, pourqui FROM envoi".$_SESSION['base']."";
    $sth=$bdd->query($requete);
     
    // on recolte les données 
    while ($row = $sth->fetch(PDO::FETCH_ASSOC)) {
        $data[$row['choixbase']] .= '<tr><td>'. $row['articles'] . '</td><td>' .$row['designations'] . ' </td><td> ' . $row['qte'] . '</td><td>' . $row['casiers'] . ' </td><td> ' . $row['qui'] . ' </td><td> ' . $row['pourqui']. '</td><td></tr><br>'; //'&#10 ';
    }
    // on envoie les mails 
    foreach ($data as $base=>$contenu) {
      //echo 'envoyer un mail à <input type="text" name = "qte" id="'. $base . '" value="'. $base . '"/> pour <br/><input type="text" name = "qte" id="'. $base . '2" value="'. $contenu . '"/><br/><br/>';
        echo '<form action="envoimail.php" method="post" id="'. $base . '2" ><fieldset><legend> Evoyer le mail à '. $base . '</legend>';    
        echo '<input type="submit" name="OK" id="submit" value="'. $base . '"/>';
        echo '<table id="'. $base . '2"><th>Articles</th><th>Désignations</th><th>Qté</th><th>Casiers</th><th>Qui</th><th>Attribution</th>';
        echo  $contenu ;
        echo '</table>';
        echo '<textarea id="'. $base . '3" cols="85" style="height:auto"></textarea><br/>';
        echo '</fieldset></form>';
     
    }
    ?>
     
    </div>
    Je crée un formulaire pour chaque base.
    Maintenant je bloque pour que sur l'appui du bouton de chaque base cela m'envoie le formulaire
    Merci d'avance

  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
    Par défaut
    C'est la même chose pour une seul base
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    $sth=$bdd->prepare("SELECT choixbase, articles, designations, qte, casiers, qui, pourqui FROM envoi".$_SESSION['base'] . " WHERE choixbase = :choixbase");
    $sth->execute($_POST['submit']);
    $data = '';
    while ($row = $sth->fetch(PDO::FETCH_ASSOC)) {
        $data .= '<tr><td>'. $row['articles'] . '</td><td>' .$row['designations'] . ' </td><td> ' . $row['qte'] . '</td><td>' . $row['casiers'] . ' </td><td> ' . $row['qui'] . ' </td><td> ' . $row['pourqui']. '</td><td></tr><br>';
    }
    // on envoie le mail
    .....
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  6. #6
    Membre averti
    Inscrit en
    Février 2009
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 43
    Par défaut
    Je ne comprend pas trop ton code car il ne s'applique qu'à une base, si je l'analyse correctement.
    Mais en partant de ton code comme je l'ai modifié, mes formulaires apparaissent de la sorte.
    Nom : form.png
Affichages : 137
Taille : 30,7 Ko
    Donc en appyant sur le bouton de la base j'aimerai que le mail s'envoie.Et la je bloque.
    Voici le code source des formulaires précédant Les différentes ID à récupérer sont nommés avec la base concerné concaténer avec un chiffre.

    Merci d'avance pour résoudre mon problème ou trouver une autre solution.
    Images attachées Images attachées  

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

Discussions similaires

  1. Clé étrangère problème lors de la création de la table.
    Par snoopy69 dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 18/08/2005, 08h15
  2. Création d'une table avec foreign key
    Par lepierre dans le forum Langage SQL
    Réponses: 5
    Dernier message: 17/09/2004, 14h20
  3. création automatique de table avec createdb??
    Par champion dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 13/09/2004, 09h01
  4. INTERBASE Création d'une table
    Par Corben dans le forum InterBase
    Réponses: 2
    Dernier message: 19/06/2004, 20h55
  5. Problème THEORIQUE de création de ma table...
    Par Mr.KisS dans le forum Requêtes
    Réponses: 15
    Dernier message: 06/04/2004, 09h29

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