Tenir une requete? [resolu] - PHP - Programmation
Marsh Posté le 17-03-2009 à 10:20:19
ben faut utiliser les variables de session.
Marsh Posté le 17-03-2009 à 10:43:05
ben j'ai dejà essayé ça marche pas...dis moi comment tu ferais pour voir....je veux bien réessayer
Marsh Posté le 17-03-2009 à 11:04:12
pour ce type de recherche je te conseil d'utilisé GET au lieu de $_POST['recherche'], parce que a chaque fois que tu feras suivant pour precedant, il va te demandé de reconfirmer l'envoie post
sinon avec SQL_CALC_FOUND_ROWS, tu peux avoir le nombre total d'enregistrement tout en conservant la LIMIT
Marsh Posté le 17-03-2009 à 11:14:17
nope!
j'ai remplacé par GET....toujours rien, aucun resultat
Code :
|
Marsh Posté le 17-03-2009 à 11:43:07
Il ne t'a pas dit que remplacer post par get allait résoudre ton problème, mais simplement que c'était mieux de faire ainsi.
Passe par des sessions comme on te l'a suggéré. Tu as dit que ça ne marchait pas, et que tu avais essayé. Peux-tu nous montrer le code ?
Marsh Posté le 17-03-2009 à 11:51:10
un truc du genre avant al construction de ta requête
Code :
|
Marsh Posté le 17-03-2009 à 15:48:04
voilà ce que j'ai mis dans le code
Code :
|
mais la valeur n'est toujours pas tenue... rien n'est meme récupéré de la base :-(
Marsh Posté le 17-03-2009 à 16:04:50
ça m'étonnes pas, t'as vu ce que t'as écrit ligne 27 Décidemment, c'est la journée des mecs qui veulent faire du PHP/MySQL mais qui n'ont même pas pris le temps de lire un peu de doc sur la syntaxe du PHP ou des requêtes SQL
Code :
|
Marsh Posté le 17-03-2009 à 16:06:36
Pour débugger, un conseil, fait un echo de $sql pour voir la requête qui est générée et ensuite, tu l'exécutes dans phpmyadmin pour voir s'il lève des erreurs ou quels sont les enregistrements retournés
Marsh Posté le 17-03-2009 à 16:56:49
toujours rien rufo..
en faisant un debugg myadmin je peux pas avoir de renvoi puisque la requete n'est pas renseignée (recherche)
si je la renseigne ça fonctionne.
l'echo retourné est bon,bonne table bon champ...
maintenant le resultat retourné est...vide et affiche le début de la base!
ceci dit,ça a fonctionné un temps et j'ai cru que vous y étiez arrivé!!! les pages se sont affichés avec la requete demandée tout comme il faut...et en faisant une demande sur une autre requete(autre ville dans le formulaire) les résultats affichés étaient ceux de la ville précédente!!!mais en vidant la session avec unset,là j'ai carrément plus que la requete vide
SELECT city, title FROM jos_restaurante WHERE city LIKE '%'
La table jos_restaurante compte 1714 city.
On affiche 20 enregistrements par page, soit un total de 86 pages.
vous en pensez quoi...?
Marsh Posté le 17-03-2009 à 17:09:22
ça y est!!!!!!!!!!!!!!!!!!!!!!!
le if a été changé de
# if (isset($_SESSION["recherche"])) {
# $recherche = $_SESSION["recherche"];
# } else {
# $recherche = strip_tags($_GET['recherche']);
# $_SESSION["recherche"] = $recherche;
# }
en
if(isset($_POST['recherche']))
$_SESSION['recherche'] = $_POST['recherche'];
$recherche = $_SESSION['recherche'];
en fait c'est l'apport de addslashes qui à l'air de faire fonctionner le script!
et personne avant toi rufo ne l'avais remarqué!!!!
grand bravo et super mille merci pour votre interet et vos contributions...comment je peux remercier..?
Marsh Posté le 17-03-2009 à 17:09:49
Mon bout de code permet de stocker une recherche en session. Maintenant il te faut l'adapter pour lui faire prendre en compte une nouvelle recherche. Là, c'est normal qu'il garde la première recherche puisque la variable de session "recherche" existe. Il faut à un moment la réinitialiser.
Code :
|
Faut un peu réfléchir par toi-même. Là, c'est pas un pb de code php, c'est purement un pb de logique.
Marsh Posté le 17-03-2009 à 17:15:27
tiens, t'es passé en POST maintenant, plus en GET? Bon ben t'as qu'à remplacer $_GET par $_POST dans le bout de code que je t'ai fourni. Si tes données peuvent venir de POST et de GET :
Code :
|
Marsh Posté le 17-03-2009 à 17:37:41
Tu édites ton premier post de ce topic et tu mets [résolu] en début du titre du topic.
Marsh Posté le 17-03-2009 à 09:48:13
Bonjour,
j'ai un cas que personne n'arrive à résoudre...Voilà:
j'ai un formulaire d'où part une requête.j'aimerais que cette requête soit suivi sur le code suivant de page en page. hors elle n'est pas "tenue".les pages suivantes n'affichent plus la demande mais le premier enregistrement de la base.comment faire pour qu'elle soit renouvellée sur toute les pages,sachant que lorsque je renseigne le select de maniere fixe et determiné,ça fonctionne,les bons resultats s'affichent de page en page...Je suis en local avec wamp php5...merci beaucoup!
Message édité par chanteur06 le 17-03-2009 à 18:38:33