Tester si les visiteurs passent bien par son site pour accéder à 1 page

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Tester si les visiteurs passent bien par son site pour accéder à 1 page

par AB » 18 avr. 2008, 17:15

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)

par zeus » 18 avr. 2008, 11:07

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.

par slec » 18 avr. 2008, 10:39

Merci yaug. Ca marche !!

par yaug » 18 avr. 2008, 10:35

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.

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

par slec » 18 avr. 2008, 10:29

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