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 :

Script avec deux requetes


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2009
    Messages
    145
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 145
    Par défaut Script avec deux requetes
    Bonjour,

    J'ai un script qui me renvoie les nombres de visiteurs de mon site et qui me l'envoie par mail.

    Mon souci est que je voudrais pouvoir faire 2 requetes pour un seul mail mais je ne vois pas comment.

    Pouvez vous m'aider ?

    Voici mon script qui fonctionne :

    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
    //recupere date du jour
    $date = date('Y-m-d', time() - 3600 * 24);
    //date ("Ymd");
     
    //Connection Mysql
    mysql_connect("*","*","*")or die("Problème avec la base de données");
    mysql_select_db("*")or die ("pas de connection");
     
     
     $reponse = mysql_query("SELECT COUNT(*) 
    FROM  `jom15_jstats_visits` 
    WHERE  `visit_date` = '$date'"); // Requête SQL
     
     
     
    // On fait une boucle pour lister tout ce que contient la table :
    //***********************************************************************************************************************
    if ($date)
    {
    //*************************************************************************************************************************
    while ($donnees = mysql_fetch_array($reponse))
     
    {
     
    //Envoi mail
    $to = 'bidule@aol.coop' ; 
    $subject = 'Nombre de visiteurs' ; 
     
    $body = '<HTML>' ; 
     
    $body = $body . '<HEAD>' ; 
     
    $body = $body . '</HEAD>' ; 
     
    $body = $body . '<BODY>' ; 
    $body = $body . '<p>';
    $body = $body . 'Nombre de visiteurs du ';
    $body = $body . $date;
    $body = $body . '</p>';
     
    $body = $body . '<div width="300">' ; 
    $body = $body . '<center>';
    $body = $body . '<table border="1" cellspacing="3" cellpadding="3">' ; 
     
    $body = $body . '<tr>' ; 
    $body = $body . '<td>' ; 
    $body = $body . $date;
    $body = $body . '</td>' ; 
    $body = $body . '<td>' ; 
    $body = $body . $donnees [0]; 
    $body = $body . '</td>' ; 
    $body = $body . '<tr>' ; 
    $body = $body . '</table>' ; 
    $body = $body . '</center>';
    $body = $body . '</div>' ; 
    $body = $body . '</BODY>' ; 
    $body = $body . '</HTML>' ; 
     
    $headers = "MIME-Version: 1.0\r\n" . "Content-type: text/html; charset=iso-8859-1\r\n" . "From: siteInterval.coop" ; 
     
         mail($to, $subject, $body , $headers);
     
     }
     
     
     
    //mysql_close(); // Déconnexion de MySQL
    //****************************************************************************************************
    }
    else
    {
    '';
    }
    //****************************************************************************************************
    ?>

    et la requete que je voudrais rajouter :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $reponse = mysql_query("SELECT COUNT(*) 
    FROM jom15_jstats_impressions
    INNER JOIN jom15_jstats_visits ON jom15_jstats_visits.visit_id = jom15_jstats_impressions.visit_id
    WHERE jom15_jstats_visits.visit_date = '$date'"); // Requête SQL

    Qui me permettrait de recuperer le nombre de pages visitées.

    Merci pour votre aide.

    Amicalement

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2009
    Messages
    145
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 145
    Par défaut
    J'ai reussi a lier 2 requetes dans un seul mail. Ces deux requetes n'entraine qu'une ligne chacune mais lorsque je lie une troisième requete qui elle entraine plusieurs lignes, je n'ai que la premiere ligne de la 3ème requete.

    Je me doute qu'il faudrait que je remplace les And par des or mais lorsque je met des or j'ai une erreur.

    Une idée ?

    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
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    <?php
    //recupere date du jour
    $date = date('Y-m-d', time() - 3600 * 24);
    //date ("Ymd");
     
    //Connection Mysql
    mysql_connect("*","*","*")or die("Problème avec la base de données");
    mysql_select_db("*")or die ("pas de connection");
     
     
     $reponse = mysql_query("SELECT COUNT(*) 
    FROM  `jom15_jstats_visits` 
    WHERE  `visit_date` = '$date'"); // Requête SQL
     
     $reponse1 = mysql_query("SELECT COUNT(*) 
    FROM jom15_jstats_impressions
    INNER JOIN jom15_jstats_visits ON jom15_jstats_visits.visit_id = jom15_jstats_impressions.visit_id
    WHERE jom15_jstats_visits.visit_date = '$date'"); // Requête SQL
     
     $reponse2 = mysql_query("SELECT jom15_jstats_pages.page_title, COUNT(*)
    FROM jom15_jstats_impressions
    INNER JOIN jom15_jstats_visits ON jom15_jstats_visits.visit_id = jom15_jstats_impressions.visit_id
    INNER JOIN jom15_jstats_pages ON jom15_jstats_impressions.page_id = jom15_jstats_pages.page_id
    WHERE jom15_jstats_visits.visit_date = '$date' GROUP BY jom15_jstats_pages.page_id ORDER BY COUNT(*) DESC"); // Requête SQL
     
     
     
    // On fait une boucle pour lister tout ce que contient la table :
    //***********************************************************************************************************************
    if ($date)
    {
    //*************************************************************************************************************************
    while (($donnees = mysql_fetch_array($reponse)) and ($donnees1 = mysql_fetch_array($reponse1)) and ($donnees2 = mysql_fetch_array($reponse2)))
     
    {
     
    //Envoi mail
    $to = 'bidule@aol.com' ; 
    $subject = 'Nombre de visiteurs' ; 
     
    $body = '<HTML>' ; 
     
    $body = $body . '<HEAD>' ; 
     
    $body = $body . '</HEAD>' ; 
     
    $body = $body . '<BODY>' ; 
     
    // Code pour le nombre de visiteurs
     
    $body = $body . '<p>';
    $body = $body . 'Nombre de visiteurs du ';
    $body = $body . $date;
    $body = $body . '</p>';
     
    $body = $body . '<div width="300">' ; 
    $body = $body . '<center>';
    $body = $body . '<table border="1" cellspacing="3" cellpadding="3">' ; 
     
    $body = $body . '<tr>' ; 
    $body = $body . '<td>' ; 
    $body = $body . $date;
    $body = $body . '</td>' ; 
    $body = $body . '<td>' ; 
    $body = $body . $donnees [0]; 
    $body = $body . '</td>' ; 
    $body = $body . '<tr>' ; 
    $body = $body . '</table>' ; 
    $body = $body . '</center>';
     
    // code pour le nombre de visites
     
    $body = $body . '<p>';
    $body = $body . 'Nombre de visites du ';
    $body = $body . $date;
    $body = $body . '</p>';
     
    $body = $body . '<div width="300">' ; 
    $body = $body . '<center>';
    $body = $body . '<table border="1" cellspacing="3" cellpadding="3">' ; 
     
    $body = $body . '<tr>' ; 
    $body = $body . '<td>' ; 
    $body = $body . $date;
    $body = $body . '</td>' ; 
    $body = $body . '<td>' ; 
    $body = $body . $donnees1 [0]; 
    $body = $body . '</td>' ; 
    $body = $body . '<tr>' ; 
    $body = $body . '</table>' ; 
    $body = $body . '</center>';
     
    //Code pour les pages visitées
     
    $body = $body . '<p>';
    $body = $body . 'Les pages visitées ';
    $body = $body . $date;
    $body = $body . '</p>';
     
    $body = $body . '<div width="300">' ; 
    $body = $body . '<center>';
    $body = $body . '<table border="1" cellspacing="3" cellpadding="3">' ; 
     
    $body = $body . '<tr>' ; 
    $body = $body . '<td>' ; 
    $body = $body . $date;
    $body = $body . '</td>' ; 
    $body = $body . '<td>' ; 
    $body = $body . $donnees2 [0]; 
    $body = $body . '</td>' ; 
    $body = $body . '<td>' ; 
    $body = $body . $donnees2 [1]; 
    $body = $body . '</td>' ; 
    $body = $body . '<tr>' ; 
    $body = $body . '</table>' ; 
    $body = $body . '</center>';
     
    $body = $body . '</div>' ; 
    $body = $body . '</BODY>' ; 
    $body = $body . '</HTML>' ; 
     
    $headers = "MIME-Version: 1.0\r\n" . "Content-type: text/html; charset=iso-8859-1\r\n" . "From: siteInterval.coop" ; 
     
         mail($to, $subject, $body , $headers);
     
     }
     
     
     
    //mysql_close(); // Déconnexion de MySQL
    //****************************************************************************************************
    }
    else
    {
    '';
    }
    //****************************************************************************************************
    ?>
    Oullah j'ai remplacer mes and par des || et ca fonctionne... sauf que ca m'envoi un mail par ligne de reponse de ma requete N°3

    Comment faire pour que tout arrive dans un seul mail ?

    Merci pour votre aide.

Discussions similaires

  1. [AC-2010] Peut on créer une requete avec deux requetes analyse croisée reliées?
    Par sebing dans le forum Requêtes et SQL.
    Réponses: 0
    Dernier message: 29/04/2014, 14h59
  2. problème avec deux requetes
    Par tarmo57 dans le forum Débuter
    Réponses: 13
    Dernier message: 16/09/2012, 19h27
  3. Réponses: 4
    Dernier message: 05/02/2011, 15h36
  4. script avec plusieurs requetes
    Par hypothese dans le forum Requêtes
    Réponses: 3
    Dernier message: 24/03/2009, 13h38
  5. [MySQL] problème avec deux requetes dans un même script
    Par leclone dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 09/02/2007, 10h28

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