Bonsoir,
Sur mon site j'ai un moteur de recherche, je récupère le mot clé via un formulaire puis j'éxécute ma requête qui me retourne les fiches concernées.
Pas de problème sauf que ...
... Pour des raisons de mise en page j'ai installé un script qui permet l'affichage page par page...
[voix M6] Et là c'est le drame ...[\voix M6]
Lorsque je vais sur la page 2 j'obtiens aucun résultat puisqu"il a "perdu" mon mot clé. On m'a donc conseillé d'utilisé $_SESSION mais j'arrive pas à m'en sortir malgré tout les tutos de la toile![]()
Si qq'un pouvez m'aider
Extrait de mon code sans $_SESSION :
Je n'arrive pas à garder ma variable, du coup pour la 2ème page il éxécute la requête avec $recup vide ...
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 <? require("secure/connect.php"); require ("suite2.php"); // script pour l'affichage page par page $recup = trim(addslashes(htmlentities($_POST['nom'], ENT_QUOTES))); ....... $sql= "SELECT count(id) FROM fiche WHERE MATCH (titre, panier) AGAINST ('$recup*' IN BOOLEAN MODE)" ; $titre = mysql_query($sql) ..... $nb_total = mysql_fetch_array($titre); // on teste si ce nombre de vaut pas 0 if (($nb_total = $nb_total[0]) == 0) { echo 'Aucune réponse trouvée'; } else { echo ''; // sinon, on regarde si la variable $debut (le x de notre LIMIT) n'a pas déjà été déclarée, et dans ce cas, on l'initialise à 0 if (!isset($_GET['debut'])) $_GET['debut'] = 0; $nb_affichage_par_page = 5; // Préparation de la requête avec le LIMIT $sql = "SELECT * FROM fiche WHERE MATCH (titre, panier) AGAINST ('$recup*' IN BOOLEAN MODE) LIMIT ".$_GET['debut'].','.$nb_affichage_par_page; //mettre ici le filtre // on exécute la requête $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error()); // on va scanner tous les tuples un par un while ($data = mysql_fetch_array($req)) { // on affiches les résultats dans la <table> echo '<li class="texte"><a href="fiche.php?id='.$data['id'].'" class="menu">'.stripslashes($data['titre']).'</a>'.'<br>'; // ICI } // on affiche enfin notre barre echo '<p class="retour" align="center">'.barre_navigation($nb_total, $nb_affichage_par_page, $_GET['debut'], 3).'</p>'; ?>
Partager