Analyser $HTTP_REFERER

CrazyCow007
WRInaute discret
WRInaute discret
 
Messages: 182
Inscription: 28 Déc 2003

Analyser $HTTP_REFERER

Message le Mar Oct 18, 2005 22:00

Bonjour,

Voilà ce que je cherche à faire :
Dans un script d'album photo je souhaiterais mettre un lien de retour vers la fiche correspondante automatiquement.
L'utilisation du javascript:history.go(-1) est assez limité puisque si le visiteur est arrivé sur cette page grâce à Google en cliquant sur le lien il va quitter le site.

J'ai donc pensé à utiliser $HTTP_REFERER et essayer de voir si $HTTP_REFERER contient le nom de domaine de mon site. Si oui affichage du lien :
Code: Tout sélectionner
<a href="<?php echo $HTTP_REFERER; ?>">Page précédente</a>

Si non : affichage d'un lien vers le sommaire des fiches.

J'ai donc essayé le code suivant mais ça ne marche pas. J'utilise peut-être une mauvaise fonction je sais pas... :?

Code: Tout sélectionner
<?php
$mystring = '$HTTP_REFERER';
$findme  = 'bond-fr';
$pos = strpos($mystring, $findme);

if ($pos === false) {
   echo "La chaîne '$findme' n'a pas été trouvée dans la chaîne '$mystring'";
} else {
   echo "La chaîne '$findme' a été trouvée dans la chaîne '$mystring'";
   echo " et à la position $pos";
}
 
// On peut chercher le caractère, en ignorant tout avant une position
$newstring = 'abcdef abcdef';
$pos = strpos($newstring, 'a', 1); // $pos = 7, pas 0
?>

(j'ai trouvé le code sur php.net, là il n'affiche pas l'adresse mais juste si une partie du nom de domaine a été trouvé dans la page précédente)

Merci d'avance pour vos solutions !

PS : Erreur générée:
La chaîne 'bond-fr' n'a pas été trouvée dans la chaîne '$HTTP_REFERER'


blman
WRInaute accro
WRInaute accro
 
Messages: 3073
Inscription: 5 Sep 2003

Message le Mar Oct 18, 2005 22:06

Essaye avec cette variable $_SERVER['HTTP_REFERER'] plutôt qu'avec $HTTP_REFERER (obsolète)

CrazyCow007
WRInaute discret
WRInaute discret
 
Messages: 182
Inscription: 28 Déc 2003

Message le Mar Oct 18, 2005 22:14

En fait j'ai trouvé mieux avec la fonction eregi() :roll:

Code: Tout sélectionner
<?php

$string = $HTTP_REFERER;
if (eregi('jamesbond-fr', $string)) {
   echo "<a href=\"$HTTP_REFERER\">Page précédente</a>";
}
else
{
echo("<a href=\"http://www.jamesbond-fr.com/filmographie\">Revenir aux filmographies</a>");
}
?>


Mon erreur venait du fait surtout des ' qui entourait mon $HTTP_REFERER.

EDIT : Oui ça marche parfaitement :P (une chose bien utile je trouve car on rencontre souvent des sites avec des retours en arrière agaçant à cause du Javascript qui renvoi sur le site précédent :? )


correiaj
WRInaute passionné
WRInaute passionné
 
Messages: 1110
Inscription: 25 Avr 2005

Message le Jeu Oct 20, 2005 1:45

Je te conseille quand même l´utilisation de $_SERVER['HTTP_REFERER'] plutot, car c´est la bonne syntaxe qui suivra les prochaines versions certainement...

CrazyCow007
WRInaute discret
WRInaute discret
 
Messages: 182
Inscription: 28 Déc 2003

Message le Jeu Oct 20, 2005 19:01

ah ok. Merci :)

spidetra
WRInaute passionné
WRInaute passionné
 
Messages: 1500
Inscription: 7 Juil 2003

Message le Jeu Oct 20, 2005 19:56

CrazyCow007 a écrit:En fait j'ai trouvé mieux avec la fonction eregi() :roll:



tu as tester parse_url ?

Code: Tout sélectionner
<?php
      var_dump( parse_url($_SERVER["HTTP_REFERER"] ));
?>


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :

  • Analyseur d'entête HTTP
    Cet outil vous permet de connaître le code HTTP renvoyé par le serveur pour une page donnée.
  • Test de redirection
    Cet outil vous permet de tester la validité d'un lien pour le référencement. Il vous indique la nature du lien (lien en dur, redirection bien gérée par les moteurs ou redirection mal gérée par les moteurs).
  • Analyse du positionnement
    AgentWebRanking est un logiciel professionnel qui permet d'analyser le positionnement d'un ou plusieurs sites dans plus de 300 moteurs de recherche dans le monde. Vous pouvez ainsi analyser les performances du référencement pour de nombreux mots-clés.
  • Analyse du référencement Google
    Cet outil vous donne un petit résumé de l'état de référencement de votre site dans Google.


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités