Garder les variables POST après une redirection header

Garder les variables POST après une redirection header - PHP - Programmation

Marsh Posté le 18-06-2006 à 12:40:14    

Salut  [:mad_overclocker]  
 
Dans ma petite appli PHP, j'ai peut être fait un erreur  [:mullet]  
 
J'ai un formulaire que je soumets à une page (requete.php)
requete.php, via un header, renvoit l'utilisateur sur pageBien.php si tout marche,  
mais reviens sur la page du formulaire si il manque un champ ou autre.
 
Et là c'est le drame  [:theepsilon]  
 
En effet, sur le formulaire, j'aimerais remettre les champs histoire que l'utilisateur ne retape pas tout si il y a une erreur dans le formulaire.
 
Et pas de chance, avec le header, bah je perds mes paramètres du formulaire (qui est en POST)
Je pourrais bien passer tout ça en GET sur la redirection, mais je le sens pas du tout ce coup là...
 
Comment puis je m'en sortir ?  
Existe t'il en php/html un moyen de faire un peu comme du forward en JSP (qui si je ne dis pas de connerie garde les variables envoyés)


---------------
my flick r - Just Tab it !
Reply

Marsh Posté le 18-06-2006 à 12:40:14   

Reply

Marsh Posté le 18-06-2006 à 12:42:09    

tu peut organiser ton code différemment:

Code :
  1. if( /* les paramètres sont ok */ )
  2.   include("pageBien.php" );
  3. else
  4.   include("formulaire.php" );


 
edit: [:ouais2] ouais, trop le top les sessions

Message cité 1 fois
Message édité par nargy le 18-06-2006 à 12:43:55
Reply

Marsh Posté le 18-06-2006 à 12:42:30    

Reply

Marsh Posté le 18-06-2006 à 12:44:52    

nargy a écrit :

tu peut organiser ton code différemment:

Code :
  1. if( /* les paramètres sont ok */ )
  2.   include("pageBien.php" );
  3. else
  4.   include("formulaire.php" );


 
edit: [:ouais2] ouais, trop le top les sessions


Je pense qu'il fait une redirection pour eviter le repost des données si l'utilisateurs fait un F5

Reply

Marsh Posté le 18-06-2006 à 12:49:05    

afbilou a écrit :

Les sessions


'fin, sta dire, je voudrais pas a avoir alouer 10Mo de session par utilisateur  :whistle: (mais bon, au pire du pire, je vais faire ça)

afbilou a écrit :

Je pense qu'il fait une redirection pour eviter le repost des données si l'utilisateurs fait un F5


En fait, j'ai centralisé mes requetes
 
Formulaire -> requeteur -> formulaire
 
Le requeteur redirige l'utilisateur sur une bonne page, mais cette page n'est pas une page de consultation donc include, poubelle.  
 
...puis mon design est dans une autre page, 'fin, bref, le coup des includes, sur mon archi, ça ne va pas.
 


---------------
my flick r - Just Tab it !
Reply

Marsh Posté le 18-06-2006 à 12:51:28    

10Mo de session, c'est sûrement mieux que 10Mo qui se baladent sur le réseau...

Reply

Marsh Posté le 18-06-2006 à 12:56:17    

Pas de get ... pas de session ... pas include/readfile ?
Se sont tes pre-requis ?
 
t'es dur avec toi meme la :s

Reply

Marsh Posté le 18-06-2006 à 13:00:58    

nargy a écrit :

10Mo de session, c'est sûrement mieux que 10Mo qui se baladent sur le réseau...


Rien a foutre, je paye pas le Bande passante  :D mais c'est surtout que GET (POST aussi je sais plus, mais ça doit être plus grand) est limité en taille et je voudrais pas perdre des choses en chemin

afbilou a écrit :

Pas de get ... pas de session ... pas include/readfile ?
Se sont tes pre-requis ?
 
t'es dur avec toi meme la :s


non mais c'est une archi que j'ai fais qui est comme ça, j'ai un controleur qui instance les vues, etc et un deuxième qui gère les requètes
 
Je vais peut être devoir faire un controleur de controleur  [:totoz]  


---------------
my flick r - Just Tab it !
Reply

Marsh Posté le 18-06-2006 à 13:06:01    

ben, dans ce cas il te reste plus qu'a simuler des variables POST avec la fonction header().

Reply

Marsh Posté le 18-06-2006 à 13:32:23    

nargy a écrit :

ben, dans ce cas il te reste plus qu'a simuler des variables POST avec la fonction header().


 
ou encore mieux...changer un peu l'architecture, j'ai incorporé mon requeteur dans mon controleur...et du coup, ça marche nickel  [:mad_overclocker]


---------------
my flick r - Just Tab it !
Reply

Marsh Posté le 18-06-2006 à 13:32:23   

Reply

Marsh Posté le 19-06-2006 à 14:51:39    

Perso je fais :
 
si c'est bon j'envoie mon header, si c'est pas bon j'affiche les erreurs et mon formulaire pointe sur la même page que celle où je suis

Reply

Marsh Posté le 19-06-2006 à 15:02:55    

Je@nb a écrit :

Perso je fais :
 
si c'est bon j'envoie mon header, si c'est pas bon j'affiche les erreurs et mon formulaire pointe sur la même page que celle où je suis


bah c'etait pas le cas dans mon archi actuel, maintenant, ca l'est


---------------
my flick r - Just Tab it !
Reply

Marsh Posté le 19-06-2006 à 15:11:55    

zapan666 a écrit :

Et pas de chance, avec le header, bah je perds mes paramètres du formulaire (qui est en POST)
Je pourrais bien passer tout ça en GET sur la redirection, mais je le sens pas du tout ce coup là...


Etudie un peu le protocole HTTP avant de te lancer [:dawa] Tu verra que le combo header-location est complètement naze, et pête même le protocole dans certains cas. Dans la mesure du possible, faut jamais l'utiliser (sauf cas standards, genre une page qui change d'url après archivage ou un truc comme ça, et encore, on utilisera une redirection permanente, et pas une 302-caca)

Reply

Marsh Posté le 19-06-2006 à 15:18:25    

FlorentG a écrit :

Etudie un peu le protocole HTTP avant de te lancer [:dawa] Tu verra que le combo header-location est complètement naze, et pête même le protocole dans certains cas. Dans la mesure du possible, faut jamais l'utiliser (sauf cas standards, genre une page qui change d'url après archivage ou un truc comme ça, et encore, on utilisera une redirection permanente, et pas une 302-caca)


Vu mon archi je pourais mais ca risque de faire un truc comme ca :
 
1) Requete qui demande une page -> requeteur -> Si le formulaire est pas bon, tombe sur la page demande (avec les erreurs)
2) Requete qui demande une page -> requeteur -> Si le formulaire est bon, la page demande est completement pas la meme
 
Bref c'est la variable qui change pouf, comme ca...
 
Idee : faire une fonction qui demande la page au requeteur.
 
bah merci, je vais voir si je peux pas virer le header avec location  


---------------
my flick r - Just Tab it !
Reply

Marsh Posté le 19-06-2006 à 15:25:53    

Tu ferais comment toi FlorentG ?

Reply

Marsh Posté le 19-06-2006 à 16:48:09    

Ca dépend ce que je veux faire [:dawa]

Reply

Sujets relatifs:

Leave a Replay

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