Savoir si un visiteur vient par un lien ou par accès direct

WRInaute passionné
Bonjour,

Je voudrais faire la chose suivante :

Si un gars arrive sur mon site en tappant l'url dans la barre d'adresse, c'est ok.

Si un gars arrive sur mon site par un lien situé sur n'importe quel autre site, y compris un moteur de recherche, il est redirigé ailleurs.

Est-ce possible ? Normalement oui, puisque les outils de stats détectent cela.

Comment puis-je faire, donc ?
 
WRInaute discret
Avec $_SERVER["HTTP_REFERER"]

Si c'est vide, c'est que c'est une entrée directe, sinon c'est qu'il vient d'une autre page (attention, même s'il y navigation intra-site et qu'un visiteur revienne sur cette page $_SERVER["HTTP_REFERER"] risque de ne pas être vide !)
 
WRInaute accro
Mafieuso a dit:
Avec $_SERVER["HTTP_REFERER"]

Si c'est vide, c'est que c'est une entrée directe, sinon c'est qu'il vient d'une autre page (attention, même s'il y navigation intra-site et qu'un visiteur revienne sur cette page $_SERVER["HTTP_REFERER"] risque de ne pas être vide !)

Et dans le sens contraire certains referers ne sont pas renvoyés

Le mieux est encore de faire en fonction d'un referer particulier... si ca vient de Google alors tu fais quelque chose... ca sera plus simple
 
WRInaute passionné
Salut, merci pour vos réponses.

(attention, même s'il y navigation intra-site et qu'un visiteur revienne sur cette page $_SERVER["HTTP_REFERER"] risque de ne pas être vide !)

La tournure de cette phrase me laisse dubitatif, je ne suis pas sûr d'avoir bien compris son sens.

Le mieux est encore de faire en fonction d'un referer particulier... si ca vient de Google alors tu fais quelque chose... ca sera plus simple

Ca va pas, parce que je veux que les accès par des liens situés sur d'autres sites internet soient aussi éconduits. Et je ne peux pas connaitre à l'avance les sites susceptibles de faire un lien.
 
WRInaute discret
Meeuuuhhh a dit:
Salut, merci pour vos réponses.

(attention, même s'il y navigation intra-site et qu'un visiteur revienne sur cette page $_SERVER["HTTP_REFERER"] risque de ne pas être vide !)

La tournure de cette phrase me laisse dubitatif, je ne suis pas sûr d'avoir bien compris son sens.

S'il y a plusieurs pages "protégées" et que l'une renvoit vers la première page (celle qui vérifie la provenance) le HTTP_REFERER risque de ne pas être vide ;)
 
WRInaute discret
Est ce que cette méthode est fiable car j'ai lu a pas mal d'endroit sur le web que la variable $_SERVER["HTTP_REFERER"] est pas génial niveau fiabilité mais j'ai rien trouvé de mieu :?
 
Discussions similaires
Haut