Bonjour, à tous
Je voudrai exclure les messages à caractères douteux des vrais messages
donc par défaut j'enregistre tous les messages qui sont stockés dans la colonne message avec auteur et la date de diffusion
la seconde me permet de filtrer les messages par comparaison
donc on a 2 tables
1ère table livre avec les colonnes auteur, date, et message
2ème table mot avec une colonne indertits
je bute sur une requête qui doit être simple
j'ai essayé distinct ou like ou d'autres formules sans grand résultat comme ceci
Auriez vous une suggestion ? merci Steph
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 $retour = mysql_query('SELECT DISTINCT COUNT(*) AS nb_messages FROM livre WHERE message NOT EXIST indertits FROM mot');
Le code décomposé qui effectue les requêtes pour l'affichage de tous les messages
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 donc on se connecte sur la bdd require ("connection.php"); $sql = 'SELECT auteur, usremail, date_signature, message FROM livre ORDER BY date_signature DESC'; $req=mysql_query($sql); $nb_signature = mysql_num_rows($req);
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 $sql = 'SELECT auteur, date_signature, message FROM livre WHERE NOT EXIST indertits FROM mot'; $donnees = mysql_fetch_array($retour); $totalDesMessages = $donnees['nb_messages']; // On calcule le nombre de pages à créer $nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage); // Puis on fait une boucle pour écrire les liens vers chacune des pages echo '<strong>','Commentaires','</strong>',' ', 'Livre', '<strong>',' ', '</strong>', ' ','* Champs obligatoires','<br />','Page : '; for ($i = 1 ; $i <= $nombreDePages ; $i++) { echo '<a href="./url.php?page=' . $i . '">' . $i . '</a> '; }
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 if (isset($_GET['page'])) { $page = intval($_GET['page']); // On récupère le numéro de la page indiqué dans l'adresse } else // La variable n'existe pas, c'est la première fois qu'on charge la page { $page = 1; // On se met sur la page 1 (par défaut) } // On calcule le numéro du premier message qu'on prend pour le LIMIT de MySQL $premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage; $reponse = mysql_query('SELECT * FROM livre ORDER BY id DESC LIMIT ' .htmlentities($premierMessageAafficher). ', ' .htmlentities($nombreDeMessagesParPage)); //$reponse = mysql_query('SELECT livre from auteur message ' .htmlentities($premierMessageAafficher). ', ' .htmlentities($nombreDeMessagesParPage)); while ($donnees = mysql_fetch_array($reponse)) { echo '<div class="commentlist clear fix" style="margin-top:1.1rem;font-size:1.1rem;line-height: 1.4rem;"><li class="alt"><div class="commentlist" id="d_corps_msg"><div class="commentlist" id="body_txt">','<strong>' . $donnees['auteur'] . '</strong> <em>' . htmlentities($donnees['date_signature']) . '</em> a écrit :<br />' . $donnees['message'] . '</div></div></li></div>'; } mysql_free_result ($reponse); mysql_close(); // On n'oublie pas de fermer la connexion à MySQL)
Partager