Récupérer valeur après # dans une url

toto2525

WRInaute occasionnel
Salut,

J'ai une url du style http://www.example.com/ma-page.html#recherche je souhaite pouvoir récupérer le mot ("recherche") qui se trouve après le # comment faire ?

J'ai essayé avec les $_SERVER['QUERY_STRING'] et $_SERVER['REQUEST_URI'] mais ça ne prend pas en compte ce qui est à partir du #

Merci pour votre aide.
 

Blount

WRInaute impliqué
Impossible de récupérer cette information en PHP de cette manière.

Suivant ce que tu souhaites faire, il va falloir jouer avec le JavaScript. Le mieux est tout de même de faire autrement. Par exemple, avec les paramètres d'URL : ?ac=recherche
 

toto2525

WRInaute occasionnel
Blount a dit:
Impossible de récupérer cette information en PHP de cette manière.

Suivant ce que tu souhaites faire, il va falloir jouer avec le JavaScript. Le mieux est tout de même de faire autrement. Par exemple, avec les paramètres d'URL : ?ac=recherche
Merci pour ta réponse, c'est ce que je pensais, je vais passer par des paramètres d'url, ce sera plus simple.

PS : jolie logo Blount :wink:
 

rottman

WRInaute passionné
En Javascript, pour récupérer la chaîne après #, tu peux utiliser la variable :
Code:
unescape(self.document.location.hash.substring(1))
 

wattie

WRInaute discret
salut,

et en essayant :

Code:
$url = parse_url($_SERVER['PHP_SELF']); // ou toute autre autre url comme ' REQUEST_URI ' ...
echo $url['fragment']; // <- tableau associatif contenant entre autre le hash (fragment) ( tout ce qui se trouve après le #)

ps : j'ai pas testé en direct
 

spout

WRInaute accro
@wattie: non ça ne fonctionnera pas, ce n'est pas envoyé au serveur, et donc ne sera dans aucune des variables de $_SERVER.
Le seul moyen c'est de le lire en JS.
 

Blount

WRInaute impliqué
Tu aurai du essayer avant de poster …

Sujet déjà traité mainte fois, il n'est pas possible de récupérer cette information directement avec PHP.
 

Discussions similaires

Haut