Gros problème de redirection header('location : mapage1.php')

Signaler
Messages postés
108
Date d'inscription
jeudi 23 mars 2006
Statut
Membre
Dernière intervention
28 février 2013
-
Messages postés
108
Date d'inscription
jeudi 23 mars 2006
Statut
Membre
Dernière intervention
28 février 2013
-
Autre façon d'utiliser la redirection
j'ai deux pages mapage1.php et mapage2.php.
Dans un premier temps je suis sur la page mapage1.php qui est une longue liste de plusieurs pages.
Admettons que je suis à la page no 5 de  mapage1.php et puis je sélectionne un élément de la liste puis j'ouvre
mapage2.php sur laquelle je fais qques modifs puis un update de l'enregistrement et je veux après validation revenir sur mapage1.php
au numero ou j'étais avant et non en debut car en faisant header('location:mapage1.php') je reviens en debut de mapage1.php et non à la page numero 5 de mapage1.php.
Je précise que header('location:$_SESSION['last_url']') ne marche pas.


Comment faire la redirection header(....) tout en précisant que je veux bien revenir sur la page mapage1.php mais au page numero 5 et non au numero 1 de mapage1.php ?

Cordialement à vous tous!!!

16 réponses

Messages postés
246
Date d'inscription
mercredi 14 avril 2004
Statut
Membre
Dernière intervention
29 décembre 2008
2
T'as essayer de le faire en javascript? Mets ca sur un bouton :
onClick="javascript:window.history.back(1)"

Je ne garantis rien, mais ca peut peut etre marcher...
Messages postés
624
Date d'inscription
mardi 6 mai 2003
Statut
Membre
Dernière intervention
14 décembre 2009
1
salut !

tu peux aussi passer ta variable page en GET et te positionner en conséquence dans ta page mapage1.php

header("location: mapage1.php?page=5");
exit();
Messages postés
108
Date d'inscription
jeudi 23 mars 2006
Statut
Membre
Dernière intervention
28 février 2013

Euh !!! comment est il possible de faire :
header("location: mapage1.php?page=5"); ?
Dans mapage1.php comment faire pour aller directement sur la page numero 5 ?

Par ailleurs je précise que c'est après un "sumbmit" que je veux retourner automatiquement à la page précédente numero 5.

Par exemple :
   
en validant je veux  retourner automatiquement à la page précédente numero 5.

Celui qui me propose la solution à la javascript ou je mets le code
onClick="javascript:window.history.back(1)" ???
Messages postés
624
Date d'inscription
mardi 6 mai 2003
Statut
Membre
Dernière intervention
14 décembre 2009
1
ton code la c'est dans un affichage page par page non ?

donc comment tu va a la page 5 de mapage1.php ??

avec un lien [mapage1.php?page=5 5] non ??

sinon j'ai rien compris a ton truc
Messages postés
108
Date d'inscription
jeudi 23 mars 2006
Statut
Membre
Dernière intervention
28 février 2013

Je veux bien faire comme ce que vous dites mais cela ne marche pas !!!
donc comment tu va a la page 5 de mapage1.php ??

avec un lien [mapage1.php?page=5 5] non ??

Et sur mapage1.php comment faire pour dire d'aller à la page 5 automatiquement ?

Ce que je veux faire c'est ceci :
 
en validant je veux  retourner automatiquement à la page précédente numero 5.
Messages postés
246
Date d'inscription
mercredi 14 avril 2004
Statut
Membre
Dernière intervention
29 décembre 2008
2
La fonction "javascript:window.history.back(1)" permet de revenir à la page précedente, donc dans la plupart des navigateur (je ne suis pas sur que ca marche avec tous), cela te replace exactement la où tu etais sur cette page.

Si tu ne veux pas utiliser de bouton, mais une redirection direct, tu peux mettre du javascript directement dans ton code php avec la syntaxe suivante : echo ('<script language="javascript" type="text/javascript">
                <!--
                window.history.back(1);
                -->
        </script>');

Essaie, ca devrait marcher...
Messages postés
108
Date d'inscription
jeudi 23 mars 2006
Statut
Membre
Dernière intervention
28 février 2013

Cela ne marche pas car cela me ramène toujours à la premiere page par défaut et non la dernirèe...
Messages postés
246
Date d'inscription
mercredi 14 avril 2004
Statut
Membre
Dernière intervention
29 décembre 2008
2
Bon alors derniere chance, essai d'enlever le 1 ou de mettre -1

=>window.history.back();
ou
=>window.history.back(-1);
Messages postés
108
Date d'inscription
jeudi 23 mars 2006
Statut
Membre
Dernière intervention
28 février 2013

En fait cela ne marche pas non plus avec window.history.back(-1);
qui  va à la page -1 et non à la page n-1 d'ou l'interêt de connaitre la page courante n avant de pouvoir aller à n-1.
Messages postés
624
Date d'inscription
mardi 6 mai 2003
Statut
Membre
Dernière intervention
14 décembre 2009
1
moi j'ai toujours pas captés comment tu faisait pour "naviguer" au sein de ta page mapage1.php ??

edit : "la page mapage1.php qui est une longue liste de plusieurs pages"

tu transmet bien une variable GET ou un truc comme ca ??
Messages postés
108
Date d'inscription
jeudi 23 mars 2006
Statut
Membre
Dernière intervention
28 février 2013

Oui bien sûr que je transmets à travers l'URL un code client pour appeler la mapage2.php :


.... http://www.monsitex.com/mapage2.php?variable1=$code_cli .... ........


et dans mapage2.php je fais un $_GET["variable"] pour recupérer le code me permettant d'extraire dans la base l'enregistrement concerné en vue d'une mise à jour et jusque là pas de problème.
Une fois l'enregistrement updaté je veux revenir à la page numero x de mapage1.php et là ça ne va pas car  " ....history.back(-1) ne suffit pas...

Comme je l'avais dit le problème reste à déterminer sur quel numero X de mapage1.php 
j'étais avant d'appeler mapage2.php et comme cela je pouvais ainsi revenir à cette page X précise de mapage1.php au lieu d'aller à la page 1 de mapage1.php.
J'èspère  que c'est clair maintenant. 
Messages postés
624
Date d'inscription
mardi 6 mai 2003
Statut
Membre
Dernière intervention
14 décembre 2009
1
non je crois qu'on se comprend pas mais alors pas du tout ...

je te parle pas du lien mapage1.php vers mapage2.php mais de ceux qui te permettent de passer de la page 1 à la page 2, 2 à 3, ... , au sein de mapage1.php
Messages postés
108
Date d'inscription
jeudi 23 mars 2006
Statut
Membre
Dernière intervention
28 février 2013

Il n'y a pas de lien qui permet de passer d'une page 1 à une page 2 de mapage1.php mais il y a bien des liens qui permet de passer de mapage1.php vers mapage2.php.


Les élements de la mapage1.php proviennent d'une requête de base de données et sont paginées sur une dizaine de pages.
Messages postés
624
Date d'inscription
mardi 6 mai 2003
Statut
Membre
Dernière intervention
14 décembre 2009
1
"sont paginées sur une dizaine de pages."

Donc toujours la même question : comment tu passe de ta page 1 à ta page 2 au sein de ton fichier mapage1.php ??
Messages postés
246
Date d'inscription
mercredi 14 avril 2004
Statut
Membre
Dernière intervention
29 décembre 2008
2
Je ne comprend pas tres bien quand tu dis :
"Les élements de la mapage1.php proviennent d'une requête de base de données et sont paginées sur une dizaine de pages.".

Qu'y a-t-il concraitement dans mapage1.php? Tu fais différents tests et inclue les fichiers qui t'interesse? Je ne comprend pas le mecanisme de ta page, peut etre pourrais tu nous donner l'algorythme en gros de ta page, comme ca nous comprendrons mieux ce que tu veux faire, et nous pourrions mieux t'aider :-)
Messages postés
108
Date d'inscription
jeudi 23 mars 2006
Statut
Membre
Dernière intervention
28 février 2013

Moi aussi je n'arrive pas à comprendre ce que vous n'avez tjrs pas compris.
J'ai finalement trouvé la solution mais je vais qd même éclairer les choses encore un peu.
Sur mapage1.php j'ai une liste d'enregistrement cliquable du genre :


...


et si on clique sur le lien on ouvre mapage2.php et on fait ce qu'on veut sur cette page.
 Le problème qui se posait c'est que une fois qu'on a terminé sur mapage2.php il faut revenir exactement sur la page ou on était dans mapage1.php et c'est tout...et je pense que question d'algorithme n'a pas lieu d'être...


Maitenant voyons  comment le problème a été résolu :


Avant de quitter mapage1.php il faut connaitre le numero de page ou on était puis transmettre dans l'URL qui appelle
mapage2.php ce numéro en parametre.
Après avoir fini les traitements sur mapage2.php avant de revenir sur mapage1.php on retransmet le même numéro de page afin de pouvoir aller sur cette page dans mapage1.php.


Par ailleurs ce que j'ai appelé pagination c'est simplement le nombre  de pages que contient mapage1.php et à comparer avec notre discussion sur le sujet en cours nous avons deux pages... (Page 1 et Page 2 ).




Et voilà la littérature est terrminée !!!