Salut,
J'ai un soucis avec ma requête de récupération. En effet, j'ai déjà élaboré une requête me permettant de récupérer tous les messages envoyés par mes clients dans ma bd et cela marche bien. Je veux maintenant faire des sélections spécifiques, c'est à dire:
1- Récupérer tous les messages reçus à une date donnée.
2 - Récupérer tous les messages envoyés par un client donné à une date donnée. Et cela en faisant une pagination.
Ci-dessous le code que j'ai élaboré pour la requête n°1, c'est à dire récupérer tous les messages reçus à une date donnée.
Merci de votre aide.
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 <div class="container"> <div class="row"> <section class="col-lg-12 col-md-12 col-sm-12 col-xm-12"> <!-- align="center" class="article_special" --> <center><h1><b>LES DEVIS DEMANDES A UNE DATE DONNEE</b></h1></center> <table border="1px"; width="1170px"; height="200px"; border="1" color="#999"; font-size="1em"; align="center"> <tr> <td color="blue"><strong>Numero</strong></td> <td><strong>Nom visiteur</strong></td> <td><strong>Objet</strong></td> <td><strong>Contacts</strong></td> <td><strong>Email</strong></td> <td><strong>Messages</strong></td> <td><strong>Date d'envoi</strong></td> </tr> <?php $messageParPage=2; //Nous allons afficher 5 messages par page. //Une connexion SQL doit être ouverte avant cette ligne... $retour_total=$bdd->query('SELECT COUNT(*) AS total FROM messages'); //Nous récupérons le contenu de la requête dans $retour_total $donnees_total=$retour_total->fetch(PDO::FETCH_ASSOC); $total=$donnees_total['total']; //On récupère le total pour le placer dans la variable $total. //Nous allons maintenant compter le nombre de pages. $nombreDePages=ceil($total/$messageParPage); if(isset($_GET['page'])) // Si la variable $_GET['page'] existe... { $pageActuelle=intval($_GET['page']); if($pageActuelle>$nombreDePages) // Si la valeur de $pageActuelle (le numéro de la page) est plus grande que $nombreDePages... { $pageActuelle=$nombreDePages; } } else { $pageActuelle=1; // La page actuelle est la n°1 } $premiereEntree=($pageActuelle-1)*$messageParPage; // On calcul la première entrée à lire // La requête sql pour récupérer les messages de la page actuelle. $req_retour_engins=$bdd->query('SELECT * FROM messages ORDER BY id_messages DESC LIMIT '.$premiereEntree.', '.$messageParPage.''); if (!empty($_GET['date_envoi'])) { $date_envoi = $_GET["date_envoi"]; $req = $bdd->prepare("SELECT id_messages, nom_visiteur, objet, contact, email, message, date_envoi FROM messages WHERE date_envoi LIKE ?"); $req->execute(array("%".$date_envoi."%")); if($donnees = $req_retour_engins->fetch(PDO::FETCH_ASSOC)) { do { ?> <tr> <td> <?php echo $donnees['id_messages']; ?> </td> <td> <?php echo $donnees['nom_visiteur']; ?> </td> <td> <?php echo $donnees['objet']; ?> </td> <td> <?php echo $donnees['contact']; ?> </td> <td> <?php echo $donnees['email']; ?> </td> <td> <?php echo $donnees['message']; ?> </td> <td> <?php echo date('d-m-Y', strtotime($donnees['date_envoi']) ); ?> <?php //echo DATE_FORMAT(date_envoi, '%d-%m-%Y'); ?> </td> <?php } while($donnees = $req->fetch()); } else { echo '<h3>Pas de résultat trouvé! <br><a href="administration.php"> RETOUR</a></h3>'; } $req->closeCursor(); } else { echo "<h3>Saisir d'abord la date avant de la rechercher <a href='administration.php'>RETOUR</a></h3>"; } ?> </tr> </table> <?php echo '<center><p align="center"><b><b><br>Page :</b></b> '; //Pour l'affichage, on centre la liste des pages for($i=1; $i<=$nombreDePages; $i++) //On fait notre boucle { //On va faire notre condition if($i==$pageActuelle) //Si il s'agit de la page actuelle... { echo '<b><b> [ '.$i.' ] </b></b>'; } else { echo ' <a href="liste-des-devis-demandes.php?page='.$i.'">'.$i.'</a> '; } } echo '</p></center>'; $req_retour_engins->closeCursor(); ?> <a href="panneau.php"><h2>Retourner à l'administration</h2></a> </section> </div> </div>
Partager