Mysql 5.0.51a ( sur serveur debian lenny)
Je souhaite créer une requête mysql qui permet d'afficher les résultats dans un tableau html. Dans le tableau doivent s'afficher uniquement les dernières dates , les plus récentes, des visites des conseillers.
Pour créer mon programme de test je me suis fortement inspire par le programme php sur la page http://www.roseindia.net/sql/mysql-e...group-by.shtml
J'ai donc crée ma version du programme php:
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 <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> </head> <body> <?php $host = "localhost"; $user = "xxxx"; $password = "xxxx"; $database = "xxxxx"; $connection = mysql_connect($host,$user,$password) or die("Could not connect: ".mysql_error()); mysql_select_db($database,$connection) or die("Error in selecting the database:".mysql_error()); $sql="select id, code_bp_ag, conseiller_cp, max(date), conseiller_bp from animations group by code_bp_ag"; $sql_result=mysql_query($sql,$connection) or exit("Sql Error".mysql_error()); $sql_num=mysql_num_rows($sql_result); //table header echo "<table bgcolor=\"#F5F5FF\" border=\"1\">"."\n"; echo "<tr>"."\n"; echo "<td><b>id</b></td>" ."\n"; echo "<td><b>code_bp_ag</b></td>" ."\n"; echo "<td><b>conseiller_cp</b></td>"."\n"; echo "<td><b>date_derniere_visite</b></td>"."\n"; echo "<td><b>conseiller_bp</b></td>"."\n"; echo "</tr>"."\n"; while($sql_row=mysql_fetch_array($sql_result)) { $id=$sql_row["id"]; $code_bp_ag=$sql_row["code_bp_ag"]; $conseiller_cp=$sql_row["conseiller_cp"]; $date_derniere_visite=$sql_row["max(date)"]; $conseiller_bp=$sql_row["conseiller_bp"]; //display sql result data echo "<tr>"."\n"; echo "<td>".$id."</td>"."\n"; echo "<td>".$code_bp_ag."</td>"."\n"; echo "<td>".$conseiller_cp."</td>"."\n"; echo "<td>".$date_derniere_visite."</td>"."\n"; echo "<td>".$conseiller_bp."</td>"."\n"; echo "</tr>"."\n"; } echo "</table>" ?> </body> </html>
voici les données pour le test de ma base de données:
puis quand j'exécute le script php je reçois le résultat suivant:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 id conseiller_cp date code_bp_ag conseiller_bp 1 Magali 2010-09-02 11:38:28 91 Dupont 2 Julie 2010-09-23 11:31:44 91 Dupont 3 Didier 2010-09-23 11:32:07 91 Dupont
Hors ce ne pas le résultat que j'espère. Je m'attendait plutôt à ceci:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 id code_bp_ag conseiller_cp date_derniere_visite conseiller_bp 1 91 Magali 2010-09-23 11:32:07 Dupont
Le groupement se fait par le code d'agence, code_bp_ag.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 id code_bp_ag conseiller_cp date_derniere_visite conseiller_bp 3 91 Didier 2010-09-23 11:32:07 Dupont
Le type de la date dans MySQL est du timestamp
Quelqu'un à une idée ou est l'erreur?
Merci d'avance pour votre aide.
Ps: J'ai hésité de poster mon message ici ... mais bon je pense qu'il s'agit avant tout d'un problème MySQL ... et pas de php ... sauf erreur de ma part???
Partager