Cherche script PHP gestion de partenaires en dur

gcvoiron

WRInaute occasionnel
Bonjour,

Je cherche un script PHP capable de gérer des partenaires, lien en dur. Les partenaires s'inscrivent, ils placent un lien vers mon site, j'analyse les referer, et je fais une topliste des X partenaires qui ont apporté le plus de visiteur...
Connaissez-vous un script ?

Merci.
 

gcvoiron

WRInaute occasionnel
En fait, ça n'est pas ça que je recherchais. Je cherche un script qui classe les partenaires selon les visiteurs qu'ils apportent sur notre site.
 

latitude1661

WRInaute discret
J'ai fait quelques recherches et je ne pense pas que tu trouvera de code source tout fait. Mais bon ca doit pas etre bien difficile à coder toi-même... Aller un peu de courage! ;)
 

gcvoiron

WRInaute occasionnel
Le codage ne me fait pas peur :). Mais après quelques test, je doute de la fiabilitée de $_SERVER['HTTP_REFERER'] !
 

latitude1661

WRInaute discret
Je suis souvent le parcours de mes visiteurs en direct depuis mon espace admin et il est vrai que $_SERVER['HTTP_REFERER'] ne fonctionne pas toujours. Par contre j'ai pas trouvé d'alternative..Mais bon les problemes avec cette variables sont quand même assez rares, si tes partenaires t'envoient beaucoup de visiteurs la proportion d'origines non reconnues ne devrait pas être trop importante. Enfin ce n'est que mon avis :D
 

gcvoiron

WRInaute occasionnel
Oui, c'est vrai...
Ben je me lance. Un dernier truc : pour définir un visiteur comme visiteur unique, il suffit juste de contrôler son IP ? Ou il faut regarder si il a un proxi ?
 

latitude1661

WRInaute discret
En général un ip, s'il est dynamique, change en moyenne une fois par jour (dites le moi si je dis une bétise lol). Mais la probabilité que deux visiteurs differents viennent te visiter avec le meme ip dans la même semaine est bien mince. Mais bon si tu veux absolument pouvoir connaitre indépendament chaque visiteur et savoir s'il revient souvent, rien de tel qu'un ptit cookie!
 

gcvoiron

WRInaute occasionnel
Voici le code que j'ai écrit. Il ne marche pas. Avez-vous des critiques à me faire ?
Code:
<?php
require('config.php');	//Paramètres de connection
$serveur = ereg_replace("(http://[^/]*/)(.*)", "\\1", $_SERVER["HTTP_REFERER"]);	//Determination du referer  
$num_rows = mysql_num_rows(mysql_query("SELECT * FROM site_partenaires WHERE url='$serveur'"));		//Contrôle dans la BDD que le referer est un partenaire
if($num_rows!=0)	//Si le referer est un partenaire
{
	$sql = "SELECT click_in FROM site_partenaires WHERE url='$serveur'";	//On selectionne le nombre de cliques entrant de ce partenaire
	$result = mysql_query($sql); 
	$resultat = mysql_fetch_array($result);
	$total=$resultat[click_in]; 
	$total=$total+1; 	//On rajoute 1 au nombre de cliques entrants
	$sql = "UPDATE site_partenaires SET click_in='$total' WHERE url='$url'"; 	//On met à jour
	mysql_query($sql); 
}
mysql_close($dbh);
?>
 

biscuit

WRInaute occasionnel
ça ne résoudra pas ton problème, mais une petite astuce qui te permet de gagner une requête et quelques lignes:

Code:
<?php
require('config.php');   //Paramètres de connection
$serveur = ereg_replace("(http://[^/]*/)(.*)", "\\1", $_SERVER["HTTP_REFERER"]);   //Determination du referer 
$num_rows = mysql_num_rows(mysql_query("SELECT * FROM site_partenaires WHERE url='$serveur'"));      //Contrôle dans la BDD que le referer est un partenaire
if($num_rows!=0)   //Si le referer est un partenaire
{
   $sql = "UPDATE site_partenaires SET click_in=click_in+1 WHERE url='$url'";    //On met à jour
   mysql_query($sql);
}
mysql_close($dbh);

tiens je vois ça maintenant, dans ta requête UPDATE que vaut $url ? sûr que ce n'est pas $serveur à la place ?
 

gcvoiron

WRInaute occasionnel
Oui, merci pour l'erreur.
Le problème vient du $_SERVER["HTTP_REFERER"].
Si je fais un echo de $serveur, ya rien, pareil pour $_SERVER["HTTP_REFERER"]... Quelle alternative ya t-il à $_SERVER["HTTP_REFERER"] ?

Merci.
 

latitude1661

WRInaute discret
Je vois pas pourquoi ca ne marche pas.. Je viens encore de vérifier, avec un $_SERVER["HTTP_REFERER"]; je vois bien l'URL d'origine, et notament pour les recherches Google..
 

gcvoiron

WRInaute occasionnel
Ben que je clique sur mon site, tout reste vide...
https://www.google.fr/search?hl=fr&q=benefweb&btnG=Recherche+Google&meta=
Voici le code :
Code:
<?php
require('config.php');   //Paramètres de connection
$serveur = ereg_replace("(http://[^/]*/)(.*)", "\\1", $_SERVER["HTTP_REFERER"]);   //Determination du referer
$num_rows = mysql_num_rows(mysql_query("SELECT * FROM site_partenaires WHERE url='$serveur'"));      //Contrôle dans la BDD que le referer est un partenaire
if($num_rows!=0)   //Si le referer est un partenaire
{
   $sql = "UPDATE site_partenaires SET click_in=click_in+1 WHERE url='$serveur'";    //On met à jour
   mysql_query($sql);
}
mysql_close($dbh);
echo "Ref : $serveur";
echo "<br>Refht : ";echo $_SERVER["HTTP_REFERER"];
echo "<br>Num_rows : ";echo $num_rows;
?>
et je l'appel par un <?php require('../include/partners.php'); ?>...
 

biscuit

WRInaute occasionnel
Chez moi ça fonctionne bien. Autant en navigant sur ton site qu'en arrivant depuis wri ou google...
 

gcvoiron

WRInaute occasionnel
Mais ça marche sur mon 2ème PC... vraiment bizarre.
Enfin bon, ça marche, merci à tous pour l'aide !
 

Discussions similaires

Haut