







|
[ Forums >> Webmasters >> Les autres langages >> Racine de l'url de provenance d'un visiteur ]
| > Racine de l'url de provenance d'un visiteur |
[ Posté par Kelsett ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 06-09-2008 à 19:43 | 12 messages ]
  Bonjour,
(j'ai déja posté mais aucune réponse)
Je suis en train de faire un système de partenariat, et le but et de classer les partenaires en fonction du nombre de visiteurs qu'ils m'amènent, sans passer par une page comme http://www.monsite.com/in.php?partenaire_id=12
Donc mon idée a été de prendre l'url de provenance du visiteur, et de récupérer seulement la racine (aulieu de http://www.leursite.com/articles/dossier.php, seulement http://www.leursite.com/).
Voilà le code que j'ai écrit, qui est censé updater la bdd à chaque fois qu'un visiteur vient d'un site partenaire :
<?php
require('connexion.inc.php'); //Paramètres de connection
$serveur = ereg_replace("(http://[^/]*/)(.*)", "\\1", $_SERVER["HTTP_REFERER"]); //Determination du referer
$sql = "UPDATE demo_a_partner SET click_in=click_in+1 WHERE url='$serveur'"; //On met à jour
mysql_query($sql) or die(mysql_error());
?> |
|
Mais voilà, ca ne fonctionne pas 
Vous auriez une suggestion à me faire pour améliorer le code ? Je ne suis pas encore très doué en php non plus..
 
|
[ Posté par v1nce ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 08-09-2008 à 09:17 | 4024 messages ]
  qu'est-ce qui ne fonctionne pas ?
est-ce que tu récupères bien le refferrer ?
est-ce que tu réussis à tronquer ce qui t'intéresse ?
est-ce que c'est l'insertion en bdd qui foire ...
________________ V1nce
Si je les ai oubliés les bonjour, merci et au revoir sont implicites
Brevets logiciels : dites NON !
http://petition.eurolinux.org/index.html
http://swpat.ffii.org/index.fr.html
| [ Posté par Kelsett ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 08-09-2008 à 17:28 | 12 messages ]
  Heu désolé pour le dérangement, j'ai trouvé la solution sur un autre site web. Pour ceux que ça intéresse, j'ai changé le code :
$page = $_SERVER['HTTP_REFERER']; // on récupère l'adresse du referer
$url = parse_url($page); // on décompose l'url
$host = $url['host']; // on utilise la fonction host pour ne prendre que la racine (www.site.com)
$host = "http://$host"; // on rajoute http:// devant
$sql = "UPDATE demo_a_partner SET click_in=click_inn+1 WHERE url='$host'"; //On met à jour
mysql_query($sql) or die(mysql_error()); |
|
[Message édité par kelsett le 08-09-2008 à 17:29]
[Message édité par kelsett le 08-09-2008 à 17:30]
| [ Posté par jeca ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 09-09-2008 à 06:29 | 392 messages ]
  Bonjour,
Extrait du manuel de référence php :
'HTTP_REFERER'
L'adresse de la page (si elle existe) qui a conduit le client à la page courante. Cette valeur est affectée par le client, et tous les clients ne le font pas. Certains navigateurs permettent même de modifier la valeur de HTTP_REFERER, sous forme de fonctionnalité. En bref, ce n'est pas une valeur de confiance.
|
|
________________ cordialement.
jc
|
|
Services email :
  Vous devez vous identifier pour profiter des services par email du forum.
|

|