retour à la page précédente : conserver les données de session - PHP - Programmation
Marsh Posté le 04-12-2008 à 09:40:54
Après une requête de type POST, le mieux est de ne pas balancer l'affichage de php1 tout de suite comme ça. Il faut plutôt rediriger vers php1 (donc forcer la méthode GET dessus), et du coup ça roule. Donc après traitement du mot de passe, balance un :
Code :
|
Marsh Posté le 04-12-2008 à 09:43:00
c'est parce-que tu reviens sur la cible de ton formulaire. La solution est de traiter le formulaire dans un script qui ne fait pas d'affichage lui-même, mais redirige vers une autre page quand il a terminé le traitement. Ca donne quelque chose dans ce genre :
toto.html :
Code :
|
toto.php :
Code :
|
titi.php:
Code :
|
Marsh Posté le 04-12-2008 à 09:45:31
skeye a écrit :
|
Le header location doit avoir une adresse absolue (HTTP/1.1 Location)
Et après une requête POST, c'est un 303 See Other pour forcer le GET qu'il faut utiliser
Marsh Posté le 04-12-2008 à 10:27:13
FlorentG a écrit : |
Marsh Posté le 07-12-2008 à 22:56:52
bon, donc ça marche ! Parfait le coup du PHP intermédiaire !
Par contre, bizarre, ça marche sur un de mes comptes OVH, mais pas sur un autre (qui pourtant accepte le PHP) : je copie les mêmes fichiers dans un répertoire nommé pareil, et ça coince !
On dirait que cet autre compte OVH (le plus basique, 1 Mo, offert avec le nom de domaine), gère le PHP mais pas les sessions.
C'est possible ?
EDIT : ça marche ce matin ! Peut être une histoire de cache mal vidé entre mes différents test
En tout cas, merki pour la soluce
Marsh Posté le 03-12-2008 à 22:43:02
Hello,
J'ai 3 fichiers : un formulaire pour taper un mot de passe, un PHP qui affiche une liste de liens (appelons le php1), et un PHP qui affiche du texte après le clic sur un des liens (fichier php2)
J'utilise le MdP à la fois dans php1 et php2 : j'ai donc créé une session pour pouvoir utiliser le MdP sous la forme d'une variable dans les deux fichiers
Tout marche bien, sauf lorsque, depuis php2, je veux retourner à php1 pour revoir ma liste (et éventuellement cliquer sur un autre lien) : j'ai alors le fameux message :
Avertissement : expiration du délai pour cette page
Pour envoyer vos informations à nouveau et afficher cette page Web, cliquez sur le bouton Actualiser.
Y a t il un moyen d'éviter ça, tout en gardant le MdP dans sa variable : l'objectif est de pouvoir cliquer sur un autre lien de la liste, visualiser le contenu avec php2, revenir sur la liste, etc ...
---------------
Is it a bird? Is it a plane? No it s F22Raptor ! - I love flying because football, baseball, rugby, and golf only take one ball