Page 1 sur 1

Tester si les visiteurs passent bien par son site pour accéd

Posté : 18 avr. 2008, 10:29
par slec
Merci encore à tous ceux qui m'ont aidé hier :))

Je le redis je suis grand débutant en PHP et plus tout jeune... Je risque donc de poser des questions idiotes !

Je souhaiterais vérifier le "referer" des visiteurs de mon site sur une certaine page (pour être sûr qu'il sont passé par mon site pour y accéder). J'ai trouvé la fonction qu'il me fallait : $_SERVER['HTTP_REFERER'];

Le problème c'est que mon URL à tester contient des paramètres. Je voulais utiliser donc parse_url. Mais ça ne fait pas ce que je veux et je ne comprends pas mon erreur :
$url1 = $_SERVER['HTTP_REFERER']; // d'où vient le visiteur
parse_url($url1); // parse l'url
$url2 = $url1['path'] ; // récupération de la partie de l'url qui m'interesse
$url3 = "/article.php"; // l'url à comparer
Avant d'entamer le code pour faire la comparaison, j'affiche les valeurs de url1, url2 et url3 pour voir et là ce n'est pas ce que j'attends (la même chose pour url2 et url3) :
Je ne sais pas du tout ce qu'est ce "h" en 2e ligne...

Merci de vos conseils

Posté : 18 avr. 2008, 10:35
par yaug
Au sujet de ton "h".
En fait.. au lieu de faire
parse_url($url1); 
url2 = $url1['path'] ;
Fait plutôt
$tmp_url1 = parse_url($url1); 
url2 = $tmp_url1['path'] ;
parse_url ne modifie pas $url1 mais renvoie un tableau associatif. C'est ce tableau que tu dois exploiter.

Posté : 18 avr. 2008, 10:39
par slec
Merci yaug. Ca marche !!

Posté : 18 avr. 2008, 11:07
par zeus
Modération :
slec, si ta question est résolue, pense à ajouter le tag [Résolu]
pour indiquer aux personnes qui voudront consulter ce sujet qu'il contient une solution.
Tu peux réaliser cette opération en cliquant sur le bouton Image en haut à gauche de ce sujet.

Posté : 18 avr. 2008, 17:15
par AB
Attention cependant de ne pas accorder de confiance à la variable ' HTTP_REFERER '. Parfois, ou plus souvent, elle n'est pas renseignée ou peut être modifiée (cf doc)