Page 1 sur 1

script tracking

Posté : 09 juin 2007, 16:54
par Chile
Bonjour,
Je souhaiterai installer sur mon site un script me permettant de déterminer la provenance des visiteurs.
Je m'explique ! Je vais remettre à certains sites des logos du miens qu'ils vont installer sur le leur.
Et je voudrais donc savoir depuis quels sites arrivent les visiteurs.
Chacun de mes logos remis avec l'url vers mon site va comporter un code propre à chacun des site partenaires, mais comment le reconnaitre et le stocker à l'arrivée sur ma page d'accueil ?
Et y t-il des risques quelconques ?
Pouvez vous m'orientez, Merci pour votre aide

Posté : 09 juin 2007, 18:32
par iclo
Tout dépend le niveau de sécurité dont tu as besoin, mais si tu mets dans ton url un chiffre, différents pour chaque site.

Code : Tout sélectionner

http://www.example.com?origine=123
Tu peux récuperer cette id et à partir de là savoir que ce visiteur provient du site "123"
$_GET['origine'];

Posté : 09 juin 2007, 19:05
par Chile
salut Iclo,
merci pour ton info.
je ne sais pas trop de quel niveau de sécu dont j'ai besoin.
Le projet, est que je voudrais proposer un genre d'affiliation,
basé sur le principe de code promo propre a chaque affilié.
Donc sans cookies 1mois...etc Lors d'une commande avec un
code promo, je reconnais l'affilié.
Mais je veux avoir qlqs stats qui me serviront a moi et a l'affilié,
comme le nombre de visiteurs que chaque affilié m'envoie.
D'ou ma question sur le sript tracking :)
Ces données vont Être juste cumulées dans un base pour pouvoir
etre consulté par moi ou l'affilié.

Posté : 09 juin 2007, 20:15
par Chile
salut,
ben je suis parti sur cette base, et j'ai commencé à écrire un peu de script, mais je n'arrive à mettre ma base à jour:
Ma premiere question est l'écriture du lien:
http://www.example.com?track=partenaire1
mais lors de l'arrivée sur 'monsite.com' il est inscrit 'http://www.monsite.com/?track=partenaire1'
Est-ce normal ?
Ensuite sur ma page index de monsite.com
j'ai noté en haut de page
//info traking
$_GET['track']; 
puis
if (isset($_GET['track'])) 
{ 
$track = $_GET['track']; 
    //Mise à jour de la base 
	mysql_select_db($database_monsite, $monsite);
    $sql_update="UPDATE affilies SET click=click+1 WHERE track=".$track  ; 
    mysql_query($sql_update); 
	}
affilies eatnt le nom de ma base, click etant la colonne ou je souhaite cumuler le nombre de click et track la colonne nommant mes partenaires. Dans ce cas 'partenaires1'
J'ai fait l'essai plusieurs fois . Ma base contient bien un partenaire1.
merci pour votre aide

Posté : 09 juin 2007, 20:58
par iclo
Oups, petite erreur de ma part dans l'écriture de l'url d'exemple: :?
http://www.example.com/index.php?origine=132

Posté : 09 juin 2007, 21:17
par Chile
hum...j'ai mofifié l'url...mais j'enregistre toujours pas la base...
je dois avoir une erreur de script...

Posté : 09 juin 2007, 21:43
par Hubert Roksor
Petite précision sur la forme, quand vous postez un lien fictif merci d'utiliser un nom de domaine en "example.com" plutôt qu'un site existant (sauf s'il s'agit du vôtre, là c'est vous qui voyez).

Posté : 09 juin 2007, 22:01
par iclo
Petite précision sur la forme, quand vous postez un lien fictif merci d'utiliser un nom de domaine en "example.com" plutôt qu'un site existant (sauf s'il s'agit du vôtre, là c'est vous qui voyez).
Oui, en effet, mais il y a vraiment des gens qui prennent n'importe quoi comme nom de domaine :lol: :lol:

Posté : 10 juin 2007, 04:46
par Chile
ok, désolé.
Concernant mon script, j'arrive maintenant à remplir ma base, par contre
de deux clicks alors que je souhaite incrémenter d'1 click !
est-ce que qlq sait pourquoi ? voici mon script de mise a jour de la base:
<?php
if (isset($_GET['track'])) 
{ 
$track = $_GET['track']; 
    //Mise à jour de la base 
	mysql_select_db($database_monsite, $monsite);
    $sql_update="UPDATE affilies SET click=click+1 WHERE track='".$_GET['track']."'";
    mysql_query($sql_update); 
	}
?>

Posté : 10 juin 2007, 10:52
par iclo
Il faut que tu effectues des tests, avec des print, notamment pour savoir si il ne rentre pas deux fois dans ton if, etc
Difficile d'en dire plus sans avoir l'ensemble de la page sous la main.

.

Posté : 12 juin 2007, 15:45
par Chile
salut Iclo,
J'ai pas encore fait de test avec print...
echo est-ce pareil ?
par contre j'ai remonté mon script juste en desous ma connection de base
<?php require_once('maconnection.php'); ?>
<?php
// si visite depuis affilie
if (isset($_GET['track'])) 
    { 
//--Mise à jour de la base 
	mysql_select_db($database_monsite, $monsite);
    $sql_update="UPDATE affilies SET click=click+1 WHERE track='".$_GET['track']."'";
	mysql_query($sql_update) or die (mysql_error()); ; 
	}
?>
mais j'ai toujours une incrementation de 2 au lieu de 1 !

Posté : 12 juin 2007, 16:21
par Chile
Je ne vois pas d'ou cela peut-il venir, par contre, n'est il pas possible de rajouter une ligne en dessous de mon script pour detruire la variable track ? et ainsi meme si il y a relecture une deuxieme fois, la variable est vide ! :?

Posté : 12 juin 2007, 20:57
par Chile
Je viens de faire un echo sur ma page de la variable click, il me l'affiche une fois, et l'incremente aussi 2 par 2. Je ne vois pas d'ou cela peut venir !!! à l'aide :cry:

Posté : 12 juin 2007, 21:53
par Chile
Tout compte fait l'echo sur la page indique bien ma valeur +1...par contre ca incremente de 2 dans ma base.
Puis j'ai installé ce script sur une page vierge, et donc fait le test dessus, et ca incremente bien de 1 dans la base.
Donc sur ma page index, la ou se produit le phénomene, j'ai surement un retour sur le script, mais comment le trouver et comment y remedier !?? :?