variable qui suit après une redirection de page

variable qui suit après une redirection de page - PHP - Programmation

Marsh Posté le 06-02-2006 à 13:18:43    

hello :)
 
Je suis en train de faire un site en PHP et je suis confronté à un petit problème lié aux variables :  
Dans une page gloable j'ai un include dans lequel se trouve un formulaire. Ce formulaire une fois validé appelle une page dans laquelle je traite les informations, fait les requêtes SQL puis je redirige sur la page précédente et j'affiche les résultats.
Le hic c'est que j'ai donc :  
 
index.php qui contient un include form.php. La page appellée par la validation du formulaire form_sql.php récupère bien les paramètres de la méthode post.
En revanche si le traitement est bien réalisé dans la page form_sql.php, à la fin de mon traitement je fais une redirection vers la page précédente avec la fonction header et je passe en paramètre dans l'URL qui faut ouvrir l'include d'affichage des résultats. Pour ça pas de problème, sauf qu'il n'a aucun résultat à afficher : ils se sont paumés en route :D
 
pour résumer :  
 
index.php -> include form.php (formulaire méthode post : passage de variable $x et $y)
-> form.php (action="form_sql.php" ) -> form_sql.php (utilisation des variables $x et $y dans une requête SQL)
-> form_sql.php (recherche dans la base de données et passage des résultats en variable $res_sql) -> redirection de page index.php?aff_res=1
->index.php?aff_res=1 ->include form_res.php (appelle de la variable $res_sql pour afficher les resultats de la requête dans la base de données)
 
La variable $res_sql ne suit pas la redirection :o
 
Si vous pouvez m'aider, ça serait cool :)
 
Merci!

Reply

Marsh Posté le 06-02-2006 à 13:18:43   

Reply

Marsh Posté le 06-02-2006 à 13:28:10    

$res_sql est bien une ressource (résultat de l'éxécution de la requête) MySQL ?
 
alors tu ne peux pas simplement la transmettre, car c'est un pointeur de résultat et pas une donnée scalaire comme un entier ou une chaine, hors le pointeur est détruit à la fin du script précédent
 
il te faudra obligatoirement réexécuter la requête  
 
EDIT : pas trop d'inquiètude pour les ressources, en la rééxécutant directement après, elle sera dans le cache sql donc ça devrait être rapide :)


Message édité par Sh@rdar le 06-02-2006 à 13:32:25

---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Marsh Posté le 06-02-2006 à 13:37:44    

:'(
zut, ça m'embête parce que du coup je ne vais pas pouvoir factoriser mon code comme je le voulais :/
 
Merci quand même :hello:
 
 

Reply

Marsh Posté le 06-02-2006 à 13:39:07    

bin pourquoi tu fais pas ton traitement dans la même page ?
 
y'a tout un tas de trucs pour gérer ça, mais faudrait plus de détails :)


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Marsh Posté le 06-02-2006 à 14:03:11    

en fait j'ai quelques modules de recherche mais qui sont extrèmement orientés sur la possibilité de rechercher telle ou telle chose.
Du coup je pouvais faire un seul fichier dans lequel j'aurais fait une requête SQL complètement modulée selon le module d'origine et les options de recherche.
En gros factorisation du code au possible.
Là en revanche je suis obligé de créer autant de pages de recherches/affichages que j'ai de modules.
 
C'est pas grave mais c'est un peu plus long et un peu plus chiant pour les mises à jour :o

Reply

Marsh Posté le 06-02-2006 à 14:07:07    

Si tu veux toutes les requettes de recherche dans le même fichier, alors tu peux utiliser "include()" et "require()" pour les rendre accéssible là où il faut.

Reply

Marsh Posté le 06-02-2006 à 14:14:00    

require() [:wam]
 
ah, j'vais regarder ce que je peux trouver là dessus :o :jap:

Reply

Marsh Posté le 06-02-2006 à 14:17:04    

ouais, tu fais un singleton ça sera encore le plus simple :o


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Marsh Posté le 07-02-2006 à 11:37:24    

houla, j'suis archi débutant en php :D

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed