Comment savoir d'où vient notre visiteur ? [PHP] - Programmation
Marsh Posté le 16-08-2002 à 16:43:28
Vadrigar a écrit a écrit : Tu veut obtenir le DNS du visiteur ? |
peux-tu me rappeler ce qu'est le DNS...
je te dirai si c ça
Marsh Posté le 16-08-2002 à 16:44:55
un truc genre adsl4-014.010.045.paris.wanadoo.fr
Marsh Posté le 16-08-2002 à 16:50:31
Info sur le DNS: http://www.linux-france.org/articl [...] installdns
Au debut de ton message je croyais que tu voulais savoir de quel site venait le visteur mais ce que tu veut c'est le fournisseur d'acés, le domaine est dans le DNS et tu peut l'afficher comme ca:
$userIP = $REMOTE_ADDR;
$host = @GetHostByAddr($userIP);
echo $host;
Marsh Posté le 16-08-2002 à 16:51:36
--greg-- a écrit a écrit : c'est un hostname ça |
bhen DNS c'est en rapport avec ça aussi...
Marsh Posté le 16-08-2002 à 16:57:23
merci pour le DNS !
peut-on aussi savoir le site d'où vient le visiteur ?
ou sinon l'adresse qu'il a tapé pour arriver sur le site...
c possible ?
Marsh Posté le 16-08-2002 à 17:28:36
Euh ouais c possible mais me rapelle plus bien de la fonction, vais te chercher ca.
Marsh Posté le 16-08-2002 à 17:32:42
Mouais je sias plus trop, faut que tu fouille dans les scripts de http://www.phpscripts-fr.net/ tu trouveras tout ce qu'il te faut.
Marsh Posté le 16-08-2002 à 18:20:16
Je sais pas si c'est ce que tu cherches, mais en Javascript du peut obtenir l'historique du navigateur, et donc la page sur laquelle était le visiteur avant d'aller sur ton site.
l'objet "referrer" de "document" (document.referrer) contient la dernière page visitée par le visiteur.
PS : pour l'orthographe de "referrer" je ne suis pas sûr!
Marsh Posté le 16-08-2002 à 23:41:52
kremvax a écrit a écrit : Je sais pas si c'est ce que tu cherches, mais en Javascript du peut obtenir l'historique du navigateur, et donc la page sur laquelle était le visiteur avant d'aller sur ton site. l'objet "referrer" de "document" (document.referrer) contient la dernière page visitée par le visiteur. PS : pour l'orthographe de "referrer" je ne suis pas sûr! |
un seul r, enfin 3 en tout...
Marsh Posté le 16-08-2002 à 23:52:15
--greg-- a écrit a écrit : un seul r, enfin 2 en tout... |
non, 3
referer
Marsh Posté le 17-08-2002 à 09:11:47
sire de botcor a écrit a écrit : merci pour le DNS ! peut-on aussi savoir le site d'où vient le visiteur ? ou sinon l'adresse qu'il a tapé pour arriver sur le site... c possible ? |
$HTTP_REFERER, variable initialisée par le browser du client, donc non fiable
Marsh Posté le 17-08-2002 à 09:35:45
ethernal a écrit a écrit : $HTTP_REFERER, variable initialisée par le browser du client, donc non fiable |
tu as mieux ?
Marsh Posté le 17-08-2002 à 09:46:25
y a pas mieux
maisbon, c'est rare les gens qui s'amusent à modifier les propriétés du navigateur pour fausser cette variable...
Marsh Posté le 17-08-2002 à 09:52:34
g essayé 2 choses : aucune des deux ne fonctionne !
1)
$userRef = $HTTP_REFERER;
$ref = @GetHostByAddr($userIP);
echo $ref;
2)
$userRef = $HTTP_REFERER;
echo $userRef;
qqun saurait-il comment faire ?
Marsh Posté le 17-08-2002 à 10:01:24
tu as testé dans une fonction ? --> global $HTTP_REFERER;
sinon essaye aussi : getenv('HTTP_REFERER';
$userIP est initialisé ?
enlève le @ devant le gethostByaddr() pour avoir l'éventuel message d'erreur
Marsh Posté le 17-08-2002 à 10:03:35
ethernal a écrit a écrit : tu as testé dans une fonction ? --> global $HTTP_REFERER; sinon essaye aussi : getenv('HTTP_REFERER'; $userIP est initialisé ? enlève le @ devant le gethostByaddr() pour avoir l'éventuel message d'erreur |
excuse-moi... je suis pas super fort en PHP...
comment je peux utiliser concrètement les
-global $HTTP_REFERER;
-getenv('HTTP_REFERER';
??????
Marsh Posté le 17-08-2002 à 10:12:43
si tu l'utilises directement dans un script :
echo $HTTP_REFERER;
ou
echo getenv('HTTP_REFERER';
ou
echo $HTTP_SERVER_VARS['HTTP_REFERER'];
ou
echo $_SERVER['HTTP_REFERER'];
ceci dépendant de la config du serveur php...
si tu l'utilises dans une fonction, tu dois déclarer la variable en global avant de l'utiliser.
avec :
function init(){
global $HTTP_REFERER;
echo $HTTP_REFERER;
ou
global $HTTP_SERVER_VARS;
echo $HTTP_SERVER_VARS['HTTP_REFERER'];
ou
global $_SERVER;
echo $_SERVER['HTTP_REFERER'];
}
infos //www.php.net/manual/en/reserved.variables.php
Marsh Posté le 17-08-2002 à 10:35:59
ethernal a écrit a écrit : si tu l'utilises directement dans un script : echo $HTTP_REFERER; ou echo getenv('HTTP_REFERER'; ou echo $HTTP_SERVER_VARS['HTTP_REFERER']; ou echo $_SERVER['HTTP_REFERER']; ceci dépendant de la config du serveur php... si tu l'utilises dans une fonction, tu dois déclarer la variable en global avant de l'utiliser. avec : function init(){ global $HTTP_REFERER; echo $HTTP_REFERER; ou global $HTTP_SERVER_VARS; echo $HTTP_SERVER_VARS['HTTP_REFERER']; ou global $_SERVER; echo $_SERVER['HTTP_REFERER']; } infos //www.php.net/manual/en/reserved.variables.php |
désolé de te déranger encore mais je viens d'essayer :
function init(){
global $HTTP_REFERER;
echo $HTTP_REFERER;
}
function init2(){
global $HTTP_SERVER_VARS;
echo $HTTP_SERVER_VARS['HTTP_REFERER'];
}
function init3(){
global $_SERVER;
echo $_SERVER['HTTP_REFERER'];
}
qu'est-ce qu'il faut que je fasse pour que qqch s'affiche ?
Marsh Posté le 17-08-2002 à 11:30:08
tu en es ou exactement en php ?
si tu fais une fonction, il faut évidemment l'appeler pour l'exécuter. (je reprends depuis le tout début là, est-ce nécessaire ?)
sinon essaye avec
function init(){
echo getenv('HTTP_REFERER';
}
n'oublies pas une chose aussi :
si tu charges ta page de code en tapant directement l'url, le referer n'est pas initialisé !!!
il faut que tu mettes un lien (<a href="url">url</a> )d'une page vers la page qui contient ce code.
Marsh Posté le 17-08-2002 à 11:41:50
ben en fait, fut un temps où je m'y connaissais pas mal...
mais là c les vacances... et puis voilà koi..........
Marsh Posté le 17-08-2002 à 11:56:39
avant de continuer rassures moi, comment fais tu pour tester ta page de code ???
tu as bien une page avec un lien vers la page qui teste la provenance ?
sinon je laisse tomber...
index.html
Code :
|
referer.html
Code :
|
Marsh Posté le 17-08-2002 à 12:01:28
mille excuses grand maître
comme ça, ça fonctionne !...
désolé de t'avoir dérangé
je ne suis qu'un jeune paddawan
Marsh Posté le 17-08-2002 à 12:03:29
ça m'est déjà arrivé aussi
Marsh Posté le 16-08-2002 à 16:24:49
J'ai vu qu'on pouvait savoir d'où vient la personne qui est sur ton site.
Ça se traduit souvent par le domaine du fournisseur d'accés mais c un gros indice !
Qqun sait ?