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 :

Requête récursive mail


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 35
    Par défaut Requête récursive mail
    Bonjour,

    J'essaye d'envoyer un mail php, contenant une le résultat d'une requête mysql.

    pour faire simple, un utilisateur se connecte au site, et via le script panier.php, il récupère tout les articles le concernant et l'affiche dans une table récursif :

    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
     
    <table'><tr>
    <th>Quantités</th>
    <th>Produits</th>
    <th>Prix Unitaire</th>
    <th>Prix Total</th>
    </tr>
     
    <?php
    mysql_connect("$host", "$sqllogin", "$sqlpassword")or die("cannot connect");
    mysql_select_db("$db_name")or die("cannot select DB");
    $login=$_SESSION['login'];
    $requete = mysql_query("SELECT * FROM $tbl_name WHERE ident = '$login'");
    while ($donnees = mysql_fetch_array($requete))
    {
    ?>
    <tr>
    <td><strong><?php echo $donnees['quant']; ?></strong></td>
    <td><strong><?php echo $donnees['produit']; ?></strong></td>
    <td><strong><?php echo $donnees['prix']; ?> &euro;</strong></td>
    <td><strong><?php echo $donnees['prix_total']; ?> &euro;</strong></td>
    </tr>
    </table>
    Je souhaiterais donc récupérer toutes les informations, et envoyer tout ça par mail.

    J'ai essayer (par curiosité) un : $mail = file_get_contents('panier.php');
    mais apparemment cela ne fonctionne pas...

    Pouvez-vous m'aider ?
    amicalement,
    Fabien493

  2. #2
    Membre Expert
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    2 507
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 507
    Par défaut
    salut,
    [hors_sujet]
    ton <table> au debut contitent une quote en trop
    [/hors_sujet]

    sinon, il faut que tu stocke le resultat de ta requete dans une variable, que t'envois ensuite via la fonction mail();
    exemple :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $texte='';
    while($resultat_de_ta_requete){
    $texte.='<br />';
    $texte.=$resultat_de_ta_requete["quelque_chose"];
    }
    mail('me@you.com', 'sujet', $texte);
    La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

    Venez discuter sur le Chat de Développez !

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 35
    Par défaut
    Bonjour Doksuri,

    Alors déjà je te remercie énormément pour ta réponse, j'avance un petit peu.
    Un problème toutefois :

    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
     
    <?php
    session_start();
    include('config.php');
    $tbl_name="paniers";
     
    $headers ='From: commande@indiana-clamart.fr'."\n";
    $headers .='Reply-To: commande@indiana-clamart.fr'."\n";
    $headers .='Content-Type: text/plain; charset="iso-8859-1"'."\n";
    $headers .='Content-Transfer-Encoding: 8bit';
    mysql_connect("$host", "$sqllogin", "$sqlpassword")or die("cannot connect");
    mysql_select_db("$db_name")or die("cannot select DB");
    $login=$_SESSION['login'];
    $requete = mysql_query("SELECT * FROM $tbl_name WHERE ident = '$login'");
    while ($donnees = mysql_fetch_array($requete))
    {
    $panier = $donnees["quant"];
    $panier .= $donnees["produit"];
    $panier .= $donnees["prix"];
    $panier .= $donnees["prix_total"];
    } 
    mail('fabienschmitz@gmail.com', 'commande', $panier, $headers);
    ?>
    Il se trouve que ce script fonctionne plus ou moins, car, j'ai bien les variables dans le mails, mais seulement le dernier résultat, non les autres.
    comme ci, la boucle récupérais toute les infos mais n'affichait que la dernière.

    le résultat devrait-être :

    Quantité Produit Prix_unitaire Prix_total
    1 poulet 5euro 5euro
    2 CocaCola 2 euro 4 euro
    ect...

    Merci d'avance,
    amicalement,
    Fabien493

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 35
    Par défaut
    Y'a du mieux !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    $panier = '<html><head><title>Panier</title></head><body><table><tr><td>';
    while ($donnees = mysql_fetch_array($requete))
    {
    $panier .= $donnees["quant"];
    $panier .= '</td><td>';
    $panier .= $donnees["produit"];
    $panier .= '</td><td>';
    $panier .= $donnees["prix"];
    $panier .= '</td><td>';
    $panier .= $donnees["prix_total"];
    } // Fin de la boucle
    $panier .= '</td></tr></table></body></html>';
    mail('fabienschmitz@gmail.com', 'commande', $panier, $headers);
    m'affiche tout mais pas en html :
    <html><head><title>Panier</title></head><body><table><tr><td>1</td><td>coca cola</td><td>2.00</td><td>2.001</td><td>Nan Nature</td><td>5.00</td><td>5.003</td><td>CocaCola</td><td>2.00</td><td>6.001</td><td>Poulet Vidalloo</td><td>10.00</td><td>10.00</td></tr></table></body></html>

    fabien493

    edit: ok c'est mon mime, qui n'était pas en html...

Discussions similaires

  1. Requête récursive dans access
    Par Australia dans le forum Requêtes et SQL.
    Réponses: 15
    Dernier message: 29/07/2014, 16h15
  2. Réponses: 4
    Dernier message: 04/05/2006, 20h01
  3. [SQL Server]Problème avec une requête récursive
    Par evans dans le forum Langage SQL
    Réponses: 3
    Dernier message: 05/04/2006, 21h16
  4. [SQL Server] Requête récursive
    Par margagn dans le forum Langage SQL
    Réponses: 8
    Dernier message: 01/04/2006, 05h31
  5. Requête récursive
    Par tirixil dans le forum Bases de données
    Réponses: 3
    Dernier message: 07/03/2005, 17h11

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