Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

retour page precedente

18 réponses
Avatar
docanski
Bonjour,

La commande
<a href="<?php echo '$HTTP_REFERER' ?>"> Retour</a>
est l'équivalent de
<a href="javascript:history.go(-1)">Retour</a>
mais j'ai lu quelque part (désolé, sais plus où ...) qu'elle n'était pas
fiable.
Est-ce vrai ? Mes essais avec EasyPHP me donnent systématiquement la
réponse :
"Firefox ne peut trouver le fichier à l'adresse /D:/Chantier PHP/<?php
echo '$HTTP_REFERER' ?>"
IL y est pourtant, au même niveau que la page appelante.
Existe-t'il une variante et, question subsidiaire, un équivalent à
<a href="javascript:history.go(-x)">Retour</a> ?

Cordialement,
--
docanski

- Les Côtes du nord de la Bretagne par le sentier des douaniers
- Memento des champignons : le guide le plus complet du Web
- Et d'autres sujets encore sur ----> http://armorance.free.fr

8 réponses

1 2
Avatar
docanski
Alors que les eleveurs et agriculteurs polluent toujours la Bretagne,
Olivier Miakinen nous narre ce qui suit en ce 22/05/2007 1:19 :

f... je te conseille le lien
JavaScript à l'exception de toute autre méthode.


Bien, j'en resterai donc à JS pour les retours. Dommage que PHP ne
puisse offrir une alternative.
Merci pour tes explications lumineuses !

Cordialement,
--
docanski

- Les Côtes du nord de la Bretagne par le sentier des douaniers
- Memento des champignons : le guide le plus complet du Web
- Et d'autres sujets encore sur ----> http://armorance.free.fr

Avatar
Fredchou
Ça n'y change rien.
Ce qui est curieux, c'est que même ôtés, le passage du curseur sur le lien
de retour affiche la commande *avec* ces guillemets simples dans la barre
d'état.


Et si tu affiches le code HTML généré ? (menu "Affichage" / "Source" dans
IE) Que lis-tu ?
Tu dois avoir un problème de cache sur ton browser. Ou bien le fichier
appelé dans le
browser n'est pas le même que celui que tu as modifié sur le serveur !
--
Fredchou
mailto:

Avatar
Fredchou
Tu es sûr d'avoir lancé ton serveur Apache ?


Ben oui : à l'ouverture du logiciel, la fenêtre signale bien le démarrage
d'Apache et de MySQL (feux au vert) avec la confirmation "démarrage des
serveurs".


Il ne faut pas appeler ta page avec l'adresse "D:/Chantier PHP/Page.php"
mais avec "http://localhost/Page.php".
--
Fredchou
mailto:


Avatar
Florian Sinatra
*Fredchou* @ 22/05/2007 22:55 :
Tu es sûr d'avoir lancé ton serveur Apache ?
Ben oui : à l'ouverture du logiciel, la fenêtre signale bien le démarrage

d'Apache et de MySQL (feux au vert) avec la confirmation "démarrage des
serveurs".



De toute manière, si tu as le code PHP dans ta page HTML, c'est qu'il
n'a pas été interprété.

Il ne faut pas appeler ta page avec l'adresse "D:/Chantier PHP/Page.php"
mais avec "http://localhost/Page.php".


En plus. D'ailleurs, le problème doit être là : même lancé, ton serveur
n'interprètera pas le script si le navigateur ne s'adresse pas à ton
serveur (par http://localhost/). Ici, c'est le système de fichiers qui
affiche le script, tel quel.
C'est une FAQ : http://faqfclphp.free.fr/#rub2.17



Avatar
docanski
Alors que les eleveurs et agriculteurs polluent toujours la Bretagne,
Fredchou nous narre ce qui suit en ce 22/05/2007 22:55 :

Tu dois avoir un problème de cache sur ton browser.


Oui, finalement c'était bien un problème de cache. Comme à son habitude,
Firefox (que j'utilise comme navigateur par défaut pour mes tests) a
tout simplement perdu le cache et l'affichage en barre d'état correspond
aujourd'hui bien au code source.
*Mais* ... j'obtiens une erreur 403 "You don't have permission to
access /Chantier PHP/< on this server." - Apache/1.3.33 Server at
127.0.0.1 Port 80
lorsque j'active le lien de retour.
Et pourtant les serveurs sont bien ouverts ! :-(

Cordialement,
--
docanski

- Les Côtes du nord de la Bretagne par le sentier des douaniers
- Memento des champignons : le guide le plus complet du Web
- Et d'autres sujets encore sur ----> http://armorance.free.fr

Avatar
Olivier Miakinen

Bien, j'en resterai donc à JS pour les retours. Dommage que PHP ne
puisse offrir une alternative.


Ce n'est pas tellement PHP qui est moins adapté que JavaScript, mais
plutôt un programme côté serveur qui est moins adapté qu'un côté navigateur.

Pour faire la même chose côté serveur, il te faudrait te substituer à
tous les navigateurs qui interrogent le serveur en parallèle, et stocker
sur le serveur les informations sur chacun. Et encore, ceci ne pourrait
fonctionner à la rigueur que pour tes visiteurs qui n'ouvriraient qu'une
fenêtre à la fois sur ton site (OK, pour une borne d'information ce
n'est pas un souci). Éventuellement tu pourrais t'en sortir avec des
cookies pour ne pas remplir les bases de données de ton serveur, mais
là encore ça ne marcherait pas pour la navigation multi-fenêtres. Et
bien sûr ça ne marcherait pas pour ceux qui refusent les cookies.

Bref... il ne serait pas complètement *impossible* de simuler ça côté
serveur, mais ce serait tellement plus compliqué que de se reposer
sur l'historique du navigateur qui est quand même le plus a même de
maintenir un historique de navigation !

Cordialement,
--
Olivier Miakinen

Avatar
docanski
Alors que les eleveurs et agriculteurs polluent toujours la Bretagne,
Fredchou nous narre ce qui suit en ce 22/05/2007 22:55 :

Il ne faut pas appeler ta page avec l'adresse "D:/Chantier PHP/Page.php"
mais avec "http://localhost/Page.php".


Cela me donne exactement la même erreur 403 lorsque j'active le lien de
retour après être passé par la page de départ, donc : page1.htm ->
page2.htm -> page1.htm avec le retour $HTTP_REFERER dans la page2.htm :-(

Cordialement,
--
docanski

- Les Côtes du nord de la Bretagne par le sentier des douaniers
- Memento des champignons : le guide le plus complet du Web
- Et d'autres sujets encore sur ----> http://armorance.free.fr

Avatar
Fredchou
*Mais* ... j'obtiens une erreur 403 "You don't have permission to access
/Chantier PHP/< on this server." - Apache/1.3.33 Server at 127.0.0.1 Port
80
lorsque j'active le lien de retour.


Il doit y avoir un problème dans ton lien <href="...">. Consulte le code
HTML généré pour voir où est l'erreur.
--
Fredchou
mailto:

1 2