Comment récupérer l'url d'une page php ?

Résolu/Fermé
blaze - 29 mai 2005 à 14:47
Maitre2B
Messages postés
341
Date d'inscription
jeudi 29 octobre 2009
Statut
Membre
Dernière intervention
11 avril 2020
- 18 août 2015 à 14:52
Bonjour,
je cherche comment récupérer l'url de la page web, dans laquelle une personne se trouve. Quelle fonction existe-t-il en php ?
Merci d'avance pour votre aide.

8 réponses

Si tu es en PHP :

<?
$monUrl = "http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
?>

Référencement naturel avec https://www.rhinostone.com/
https://www.rhinostone.com/fra/referencement/referencement-naturel.html
315
ou tout simplement avec la variable _SERVER["SCRIPT_URI"]
<?
$monUrl = _SERVER["SCRIPT_URI"];
?>
0
logintotopass1234
8 nov. 2010 à 11:14
Pas bon du tout, il manque deux '$' et en plus rien ne garantit que $_SERVER["SCRIPT_URI"] soit initialisé.

Ça dépend fortement de la configuration du serveur, suivant CGI ou non, paramétrage, etc...

Déjà mieux, la solution précédente :
$monUrl = "http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];

Mais après, c'est encore faux car ça ne marchera pas non plus dans certains cas (ici https).
0
Bonjour,

$_SERVER['REQUEST_URI'] donne le nom de la script PHP mais si tu veux savoir la page HTML ou autre qui l'a appelée (généralement plus utile pour faire des validations), utiliser la variable $_SERVER['HTTP_REFERER']
0
neo_selen
Messages postés
153
Date d'inscription
dimanche 11 juillet 2010
Statut
Membre
Dernière intervention
29 juin 2016
15
26 mars 2012 à 15:42
et dans le cas de http://graveyardofpain.free-h.net/html/index.html comment fait-on ? es-ce que la variable $_SERVER['HTTP_HOST'] vaut bien graveyardofpain.free-h ou vaut-elle free-h (dans l'exemple ?) ou avec peut-être .net ?
0
ENCORE MIEUX =>

dirname($_SERVER['SERVER_PROTOCOL']) . "://" . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']

=D comme cela même le protocole est géré ;) normalement ça marchera dans tous les cas !!!!
0
salut blaze ,
merci a ricric pour son conseil,
j ai eu le meme probleme pour récupérer l url de la page courante car mon site www.vaillant-boxing.com se fait a partir d un templete et l encrage( du top) se faisait toujours sur la premiere page(home) et non la page courante.Alors pour obtenir la page courante il faut te servir de : $_SERVER['REQUEST_URI'] en mettant le nom de ton site devant tu aura l 'url de la page complete.J espere que cela t' indera.
a+
46
Viktor56
Messages postés
66
Date d'inscription
mardi 22 mai 2007
Statut
Membre
Dernière intervention
24 février 2012
23
31 mai 2009 à 23:38
un peu plus de précision avec ce script :

<?php
if (isset($_GET['adresse'])) {
  $adresse=$_GET['adresse'];
  $variable=$_GET['variable'];
    echo 'L\'adresse de la page est : ' .$adresse."<br />";
    echo 'Le contenu de la variable est : '.$variable;
} else {
$variable='voili voulou';
// script debut
  echo "<script type=\"text/javascript\">\n";
  echo "  location.href=\"${_SERVER['SCRIPT_NAME']}?${_SERVER['QUERY_STRING']}"
       . "&adresse=\" + window.location.href + \""
       . "&variable=\" + '".$variable."';\n";
  echo "</script>\n";
  exit();
}
?>

21
ratikuss
Messages postés
2004
Date d'inscription
vendredi 8 juin 2007
Statut
Membre
Dernière intervention
14 décembre 2016
258
3 févr. 2011 à 19:52
Parfait merci !
0
Masterfree
Messages postés
172
Date d'inscription
lundi 13 décembre 2004
Statut
Membre
Dernière intervention
3 avril 2020
4
Modifié par Masterfree le 6/09/2011 à 18:33
Très bien le script !
0
Anonymous ahahaah
14 sept. 2012 à 17:59
juste lol quoi tu te retrouve avec 2 fois la meme info dans l'url... pas bien
0
xChicken
Messages postés
16
Date d'inscription
samedi 1 décembre 2012
Statut
Membre
Dernière intervention
11 décembre 2012

5 déc. 2012 à 22:43
J'me demande juste à quoi sert la variable "$variable", et surtout comment l'enlever..
0
Pensez à protéger les variables des $_GET ! Injection php ou autres possibles
0
aminovic41
Messages postés
35
Date d'inscription
mercredi 12 décembre 2007
Statut
Membre
Dernière intervention
30 août 2013
20
Modifié par aminovic41 le 15/10/2010 à 17:23
La fonction : $_SERVER['REQUEST_URI']
_____________________
http://fr.goldannonces.com - http://www.mosaiquepub.com
10
neo_selen
Messages postés
153
Date d'inscription
dimanche 11 juillet 2010
Statut
Membre
Dernière intervention
29 juin 2016
15
10 déc. 2012 à 04:49
tu veux sûrement dire:
variable php superglobale ...
ou plus sobrement:
variable serveur
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Bonjours, le script proposé par Viktor56 est très bien et fonctionne MAIS celui ci oblige la modification de l'URL la rendant asser laide il faut bien avouer.
Serai-t-il possible d'arriver au même résultat mais sans modifier cette l'URL de la page ?

Merci d'avance

EDIT:

<?php
$adresse=$_SERVER['REQUEST_URI'];
echo '' .$adresse."<br />";
?>

Correspond a ce que je voulais :).

Merci beaucoup et au plaisir.
6
Maitre2B
Messages postés
341
Date d'inscription
jeudi 29 octobre 2009
Statut
Membre
Dernière intervention
11 avril 2020
32
24 avril 2015 à 17:15
Merci c'est gars, ça marche du tonnerre !

Grâce à vous, j'ai pu faire ce bout de code:
Si jamais mon lien est "/category/ietls/" ou bien "/category/tage-mage", alors l'image n'apparaît pas.

<?php if (($_SERVER['REQUEST_URI'] != "/category/ielts/") && ($_SERVER['REQUEST_URI'] != "/category/tage-mage/")) {?>
        	<img class="img-responsive" style="width:196px;" src="<?php echo get_template_directory_uri();  ?>/images/headers/kaplan-logo.png"  />
	<?php } ?>
0
Il y a beaucoup plus optimisé...
Notamment en créant un routeur
0
Maitre2B
Messages postés
341
Date d'inscription
jeudi 29 octobre 2009
Statut
Membre
Dernière intervention
11 avril 2020
32
18 août 2015 à 14:52
Tu peux donner le code ou afficher la marche à suivre dans ce cas ?
0
jebok
Messages postés
358
Date d'inscription
lundi 16 mai 2005
Statut
Membre
Dernière intervention
23 octobre 2007
51
29 mai 2005 à 15:04
Normalement, lorsque le code php s'exécute, c'est que l'utilisateur se trouve justement sur la page en question (celle dans laquelle tu as écrit ton code php).
-6
neo_selen
Messages postés
153
Date d'inscription
dimanche 11 juillet 2010
Statut
Membre
Dernière intervention
29 juin 2016
15
19 avril 2012 à 00:12
et mal répondre, c'est comme ne pas répondre, sauf que ça engendre plus de questions que ça n'en résoud. :) CQFD
0
Si tu utilise un include alors l'URI change :)
0
ricric
Messages postés
34
Date d'inscription
jeudi 12 mai 2005
Statut
Membre
Dernière intervention
11 mai 2006
8
30 mai 2005 à 09:01
Bonjour
Tu trouveras ton bonheur à cette adresse :
http://www.nexen.net/docs/php/annotee/reserved.variables.server.php
-7