Adsense Tracking Script v2

WRInaute discret
Sur l'autorisation de WRI, je lance un nouveau post, pour mon nouveau script de tracking Adsense.

Ce qu'il fait :
- récupération du nombre d'affichages et des clics (pour IE et pour le moteur Gecko (Mozilla etc...))
- affichage des résultats de manière simple, mais très utile (comparaison entre plusieurs formats, plusieurs zones...)

Il est disponible à l'adresse : http://www.lacoccinelle.net/adsense_code.php

Les améliorations :
- enregistrement des formats de pub, et des zones (critères) de Google. Aisni vous pourrez comparer efficacement avec les critères de Google (48h après donc, vu qu'il y a un temps de traitement chez Google...)
- affichage plus puissant, avec possibilité de comparer une multitude de pages/formats différents, et ainsi de lancer des campagnes parallèles et de voir les performances "réelles", en temps réel.

Tout bug ou suggestion est à faire sur ce post :)

PS : le multi-site n'est pas disponible pour l'instant... Ce sera peut-être le cas bientôt (si certains en ont vraiment besoin). D'autant que ce ne sera pas beaucoup plus compliqué.

PS2 : le script de traitement (log.php), le Javascript et la table ont été modifiés. Il est donc nécessaire de les réinstaller (et voui :()
 
WRInaute discret
Non, il est possible de l'importer...

Donc créez la nouvelle table, nommée adsense2 ci-après (avec la requête fournie), puis :
Code:
INSERT INTO adsense2 SELECT 'count', '', ref, date, counts FROM  adsense WHERE url =  '#';
INSERT INTO adsense2 SELECT url, '', ref, date, counts FROM  adsense WHERE url !=  '#';
Voilà, les anciens indices se retrouveront sous le titre '(non trouvé)', tandis que les nouveaux suivront les informations du fichier config.php

Si vous souhaitez les regrouper une fois ce nouveau script installé, il faut faire pour chaque zone :
Code:
UPDATE adsense2 SET zone = 'NOUVEAU_NOM' WHERE zone = 'ANCIEN_NOM';
(le nouveau nom étant l'indice google_ad_channel, 10 chiffres, avec les 0 initiaux, et l'ancien nom le nom visible dans la liste des zones sur la page de stats).

Voilà, désolé de pas avoir pensé à faire cette compatibilité somme toute normale :)
 
WRInaute discret
Yvan a dit:
PS : le multi-site n'est pas disponible pour l'instant... Ce sera peut-être le cas bientôt (si certains en ont vraiment besoin). D'autant que ce ne sera pas beaucoup plus compliqué.

Je serai fortement interesse par une possibilite de multi-site...
Je sais que tu as fait deja beaucoup de choses pour nous pour 0 carambars mais si tu pouvais ajouter ca ce seraiit nikel.
Merci, quoique tu decides... :D
 
WRInaute passionné
A titre d'info, pour ceux qui ont 20 zones google, il est facile de les récupérer avec le numero de channel dans la source de la page de rapport de google.

François
 
WRInaute passionné
Ca marche et ca a l'air d'être intéressant (en tout cas, pour ceux qui ont plein de clic...)

François
 
WRInaute discret
Alors pour répondre rapidement :

dauberman, je pense que tu mets le tracking Google fourni par Adsense sur chaque script ? Si oui, c'est parfait.

Parce que voilà ce que je vais modifier : dans le config.php, il y a la variable $zones.
Je vais la changer en un double tableau :
$zones = array(
'site1' => array('000000' => 'page index', '11111' => 'page 1'),
'site2' => array('000002' => 'page index', '11112' => 'page 1 (site2)'));

Comme ça vous pourrez voir les sites que vous souhaitez, je ferais la modif demain. A changer : le config.php et le stats.php donc.

Le seul inconvénient : il faut avoir un identifiant pour chaque script, les scripts sans identifiants google_ad_channel ne seront pas pris en compte lors de la sélection des sites. Vous pourrez même comparer des sites :)
 
WRInaute discret
Euh... oui si tu ne mets pas les mêmes codes de tracking. Et que tu appelles le même script log.php au final.
Et vu que je pense qu'il est logique de ne pas mettre les mêmes codes de tracking, la réponse est oui :)

J'en profite pour ajouter ceci : mettez un critère Google pour les pages qui ne sont rattachées à rien (donc des pages que vous ne suivez pas), un critère global donc (restedusite par exemple). Ca permettra de traiter les données facilement. Sinon on pourrait ajouter un critère en plus dans la base, mais je pense que ça va alourdir un peu pour rien... Sinon 2 sites > 2 bases et le tour est joué...
 
WRInaute passionné
Une suggestion : avoir la possibilité de configurer le début de la journée : 9h à 9h ou 10h à 10h. Ca permet de mieux relier à Google.

François
 
WRInaute discret
Salut François,

Je ne comprends pas trop ta question... Tu veux que les stats aillent de 9h à 9h le lendemain, mais pourquoi cela permettrait de miuex le relier à Google ? Il n'y a pas de décalage chez Google, non ?

Sinon je pense que je vais aussi ajouter une liste rapide pour choisir 1 semaine, 1 mois etc...
 
WRInaute passionné
Yvan a dit:
Je ne comprends pas trop ta question... Tu veux que les stats aillent de 9h à 9h le lendemain, mais pourquoi cela permettrait de miuex le relier à Google ? Il n'y a pas de décalage chez Google, non ?

Si, justement, il y a un décalage, ils sont à l'heure de la côte ouest des USA, il me semble.

Fred
 
WRInaute discret
Ha ouais... J'avais pas pensé à ça... Il faudrait le leur demander...

Bon, je suis en train de modifier les scripts, pour ajouter le multi-site etc... Je pense pouvoir ajouter une variable pour indiquer le décalage.

Par contre je ne vois pas trop comment savoir quel est le décalage réel ? Perso mes stats sont à peu près identiques à celles de Google...
 
WRInaute passionné
Yvan a dit:
Par contre je ne vois pas trop comment savoir quel est le décalage réel ? Perso mes stats sont à peu près identiques à celles de Google...
C'est normal, tu as sans doute peu de visites entre 0 et 9h du matin (heure d'hiver) et 10h (heure d'été).
Ce n'est pas le plus important, surtout sur une longue période.

François
 
WRInaute discret
dans la page de stat dans la liste déroulante zone , je n'ai pas la zone en dure (page1 page2) et j'ai entre parenthèses (non reconnu)
je pécise que j'utilise bien google_ad_channel
j'ai raté quelquechose ?

Edit
en fait il faut mettre un nombre de 10 chiffres pour les tests
Dans la page de stat , Il y a des petit problèmes avec l'implémentation de plusieurs site.
(le tableau de la page de config est maintenant à 2 dimensions)

menfin comme je n'ai qu'un site audité, j'ai bidouillé et ca va
En tout cas bravo pour le boulot 8) :wink:
 
WRInaute accro
Niveau comptabilité firefox? J'ai installé une partie du script et c'est tjs pas compatible firefox?
 
WRInaute discret
Mate : en fait tu as 2 raisons possibles à cela :
- tu utilises le script que tu as récupéré ce mercredi même : je l'ai modifié, mais je n'ai pas eu le temps de le finir, je vais m'y remettre.
- tu n'as pas configuré les zones dans le config.php.

freejeunes : j'en sais rien du tout ! Je sais que ça marche avec Mozilla 1.4 et IE6, c'est tout ce que je peux te dire. Ah si, ça marche aussi sur K-meleon, qui a lui aussi un moteur Gecko dernière génération. T'as fait des tests ou tu demandes juste comme ça ? Parce qu'il y a un moyen simple de faire un test : tu sauves ta page X avec ta frame Google, tu modifies le code javascript (show_ads.js) que ton navigateur aura sans doute téléchargé (sinon tu le télécharges), en changeant l'url contenue dans le .js (donc tu vires la partie page2.googlesyndication... pour éviter de faire un appel à leur site). Ensuite tu ajoutes :
alert('clic !');
dans le code javascript que je fournis à l'intérieur de la fonction log()

Et tu testes :D

Bon, je me remets au boulot !!
 
WRInaute discret
pour firefox , apparement il refuse de faire le on focus
j'ai dans le déboguer
Code:
Erreur : uncaught exception: Permission refusée de modifier la propriété Window.onfocus
je n'ai pas trouvé dans les options comment le permettre
dommage mais si la plupart des navigateur marchent c'est déjà pas mal.
 
WRInaute discret
Hum... Il faudrait que je l'installe pour voir... Je regarderai ça demain, là je suis mort. Par contre c'est bizarre qu'il appelle le Window.onfocus... A moins que le contentWindow existe... Et qu'il le prenne pour ce qu'il n'est pas... Enfin dans tous les ça, c'est pas très normal, et surtout c'est pas beau comme erreur :-/

Par contre, bonne nouvelle : le nouveau script est ok :) toujours la même adresse :
http://www2.lacoccinelle.net/adsense/adsense_code.php

Améliorations :
- ajout du décalage horaire
- ajout de l'affichage multi-sites
- simplification du config.php (pour les multi-sites)
- ajout des liens rapides pour le choix des périodes.

Petite info cependant pour les multi-sites : si vous choisissez un site 1, et une zone A qui n'appartient pas à ce site 1, forcément vous n'aurez que des 0. C'est simple quand on connaît le traitement :
si enregistrement dans la base appartient à la liste des zones du site 1 ET appartient à la zone A (qui n'est pas une zone du site 1) alors on l'affiche.
Forcément, y'en a aucun, donc y'aura rien :)

[Edit@2h34] Aucun problème avec Firefox ! Je viens d'installer la version 0.8, j'ai cliqué sur ma pub (je sais, je devrais pas :(), comptée immédiatement par mon script. Aucun bug dans la console Javascript... What's wrong ?
 
WRInaute accro
moi à ce niveau la:

if (typeof(elements.onfocus) == 'object') elements.onfocus = log;
else elements.contentWindow.onfocus = log;


ca marche pas du tout avec firefox aucun appel à log :-(
 
WRInaute discret
Ce que je ne pige pas : pourquoi ça ne marche pas chez vous et chez moi oui ? Quel Firefox utilisez-vous ?

Et freejeunes tu me donnes le code qui bugge, mais pas la ligne... Donc ça m'aide pas, surtout si je n'ai pas non plus l'erreur associée... Perso je n'ai aucune erreur du tout ! Ni même une erreur 'simple' (parce que le uncaught, c'est quand même assez important comme erreur).

Donc si vous pouviez me donner la ligne qui plante (je pense que c'est la 2e de ce que freejeunes a donné), et l'erreur qui va avec...

Vous avez Windows aussi ? Parce que c'est possible que le problème soit là... Perso je n'ai qu'un linux en console, donc pas de version graphique...
 
WRInaute accro
Alors ma config:

Windows XP
FireFox 0.8

Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.6) Gecko/20040206 Firefox/0.8 pour être plus précis.



J'installe le script, sous IE ca marche tjs aussi bien, sous firefox aucune erreur, mais lors du clic rien ne se passe non plus, la fonction log n'est pas appelée :-( Le clic n'est pas detéctée j'en conclut:

if (typeof(elements.onfocus) == 'object') elements.onfocus = log;
MARCHE

Mais le else ne marche pas:
else elements.contentWindow.onfocus = log;


tu as pas un code archi simple pour tester genre une page html avec le javascript on foncu sur un lien quellconque et ton alert clic pour tester sous firefox?
 
WRInaute discret
Ben...

Tu fais une page HTML vide, dans laquelle tu ajoutes une iframe (exactement celle-là) :
Code:
<iframe src="blablagooglesyndication.comblabla" width="500" height="100" style="border:2px solid red"></iframe>
Ensuite tu mets le code Javascript de Tracking APRES cette iframe. Et tu la charges pour voir.
Un conseil : change :
Code:
function log() { bug.src = 'http://www.votresite.net/log.php?zone=' + google_ad_channel + '&format=' + google_ad_format + '&url=' + window.status; }
Par :
Code:
function log() { alert('Click ok !'); }
ce qui te permettra de voir si le click marche immédiatement.
 
WRInaute passionné
Salut,

Une info qui est bien est l'affichage du nombre de clic par site dans les menus déroulants.
Pour l'instant, il n'y a que par url, mais ca serait super de l'avoir aussi pour les zones par exemple.

A plus

François
 
WRInaute discret
François : la modif est faite. C'était tellement simple que je l'ai faite illico :) A savoir que c'est le nombre de clics sur la période indiquée.

Sinon je pensais à un truc : ne serait-il pas intéressant de mettre un choix de date pour le 2e graphe ? Comme ça il serait possible de comparer 2 périodes pour une même zone par exemple. Qu'en dites-vous ? Mais là y'a un peu plus de modif (c'est simple à faire) et j'ai d'autres choses à faire :) Enfin n'hésitez pas à donner vos aviset vos suggestions ;)
 
WRInaute passionné
Bonjour,
Ca pourrait être intéréssant de pouvoir générer des rapports:
Par url :
url1
--> date1 zone1
--> date2 zone2

par zone :
zone1
--> date1 url1
--> date2 url2

par date:
date1
-->zone1 url1
-->zone2 url2

Cela permettrait de mettre plus facilement les donner en vis à vis de celle de google

François
 
WRInaute passionné
Yvan a dit:
Donc tout reviens à ajouter une 2e date, non ? Je m'en occuperai sous peu...

Bah, en fait, je pensais plus à un rapport texte. Je pense que tu as déjà tout ce qu'il faut. Il faut juste sortir les résultats sous forme d'une liste.

En fait, une requete du type
select * from adsense where url!="count" order by date, zone .... alt. order by url, date

En fait, faire un rapport adsens à la google. Je vais regarder si j'ai le temps et faire un "brouillon".

François
 
WRInaute discret
Ok, mais ça revient à changer les colonnes horaires par les valeurs journalières, c'est bien ça ?
Alors peut-être un 2e tableau serait intéressant. A étudier. J'attends ton brouillon :)
 
WRInaute impliqué
demande d'info:

Si j'ai bien compris, le premier appel à log.php sert uniquement à compter le nombre de pages vues pour ensuite faire un pourcentage par rapport au click comme dans les stats d'adsense?

Je vais sans doute ajouter ton code, mais en appelant uniquement log.php sur le focus.
Parce que sinon, cela va doubler mon nombre d'accès au fichiers (qui est limité chez mon hébergeur)
 
WRInaute discret
En effet, c'est le point négatif. Par contre tu peux supprimer cet appel coûteux (je le reconnais, et je l'ai même indiqué) en faisant la modif suivante :
dans ton script index.php supposons, tu mets ton code Javascript, tu supprimes l'appel à bug.src=...
Dans la source PHP, tu ajoutes ceci :
Code:
$_GET['zone'] = 'la référence google_ad_channel, sinon 0';
$_GET['url'] = 'count';
$_GET['format'] = 'le format google_ad_format';
include $_SERVER['DOCUMENT_ROOT'].'/le_chemin_jusqu'à_log.php/log.php';
Et ça devrait marcher... A tester donc :)
 
WRInaute discret
je passe juste pour remercier. Je ne suis pas un pro donc je passe rarement, mais j'avoue que ce script déjà performant dans sa première version est etonnemment utile actuellement !
 
WRInaute accro
J'arrive pas à faire comptabiliser les firefox...

Donc je voudrais rendre impossible aux gens qui utilisent firefox de voir la pub vous auriez un code?
 
WRInaute accro
et voila

Code:
<?php
if (strstr($_SERVER["HTTP_USER_AGENT"], "MSIE")) {
    echo "Vous utilisez Internet Explorer<br />";
}
?>

avec ca plus de prob j'empeche l'affichage si le visiteur n'a pas IE. Comme ca pas de triche de ce coté et du coté explorer tout est controlé :)


Et pour les firefox je leur met une autre pub :)


Voila :)
 
WRInaute impliqué
Juste une petite suggestion, un lien "Hier" pourrait peut-être être utile pour certains, en tout cas je l'ai rajouté sur mon script d'affichage des stats AdSense Tracking.
 
WRInaute passionné
Depuis quelques jours, j'ai beaucoup plus de clics comptés sur la console Adsens qu'avec le tracking.
Quelqu'un a vu la même chose ?

François
 
WRInaute impliqué
Aucun problème chez moi, les nombres de clic correspondent, ton script est-il installé sur toutes tes pages de la même façon? Je sais que une fois j'avais eu un problème de ce genre en mettant le tracking avant le code Google.
 
WRInaute occasionnel
Bonjour !

Tout d'abord merci pour ce script !

j'ais installé le script , il affiche bien les affichages mais par contre aucun clic de compté qu est ce que j'ais bien pu oublié de faire pour qu il compte pas les clics svp ?
 
WRInaute impliqué
J'avais eu le même problème avant, et en placant le script tracking juste en dessous (au lieu d'au dessus) du code AdSense, ça a marché, tu peux toujours essayer.
 
WRInaute discret
Heu, chez moi ca marche pas...

En fait, ca macrhe quand j'enlève ma protection htaccess... ce que je ne veux pas faire evidemment!!

Comment faire alors pour que l'appel à log.php se fasse de manière authentiifiée?
ou alors pour ne pas protéger uniquement le fichier log.php??

Merci
 
WRInaute discret
Oké... mais bon, j'ai pas mal de fichiers qui sont dans ce cas là... Ca fait pas très très propre tout de même!

Il n'y a aucun moyen de faire un lien authentifié?
ou juste de modifer htaccess pour que certains fichiers ne soient pqs protégés (ds le meme repertoire que des fichiers proteges)
 
WRInaute discret
Excusez-moi de m'incruster mais la page du site d'Yvan ne peut pas être consultée :

Notice: Undefined index: ref in /home/lacoccinelle/www/adsense.php on line 2

Notice: Undefined index: url in /home/lacoccinelle/www/adsense.php on line 3

:(
Sinon j'ai lu toutes les pages de tous les topics sur le sujet, et chapeau :)

++
Rafe
 
WRInaute passionné
J'ai fait un clic pour tester, et j'ai :

5 affichages et 0 clics....

En fait c'est sous firefox que ca compatibilise pas....
 
WRInaute passionné
Il ny à pas moyen de savoir sur quel page il y à eu le clic ? et les affichages aussi... ?
 
WRInaute discret
Moi j'utilise PHPAdsNew pour la gestion de mes pub sur mon site

Ca marche tres bien.

Vous savez si ca modifie les stats ou si ca fausse les stat de google ?

D'autres personnes l'utilisent ?

merci
 
WRInaute passionné
Salut
Si tu l'utilises en pub alternative, ca a le meme effet que d'indiquer une banniere.

François
 
Nouveau WRInaute
Bonjour général.

J'ai mis ce script en place depuis quelques jours sur un forum phpBB, et je suis très, mais alors très très surpris des résultats :?

Le script me donne 10 fois plus d'affichage que Google, et environ 3 fois plus de clics. Sachant qu'en plus, j'ai des visiteurs sous Firefox qui cliquent, et donc le script ne les compte pas.

Est-ce que Google m'arnaque ? :?

Note : a priori, pour les clics, ce n'est pas un histoire de clics rapprochés d'une même IP : j'ai modifié le script pour qu'il log aussi le nom d'user qui clic, et j'ai parfois sur une période donnée une 20aine de clics de 20 personnes différentes, et à peine 5 comptés par Google...
 
Olivier Duffez (admin)
Membre du personnel
salut xavierO,
Le mieux serait de demander ça directement à l'équipe de Google AdSense, en leur disant que tu as mis en place cet outil de tracking complet.
N'oublie pas de nous tenir informés car c'est vrai que c'est étrange...
 
Nouveau WRInaute
Rebonjour.

J'ai donc suivi ce conseil avisé, et voilà la réponse peu convaincante de Google :

Bonjour,

Merci de votre message.

Nous comprenons votre interrogation concernant une différence possible
entre les rapports de suivi de site Web que vous avez personnellement
créés et les statistiques fournies dans votre compte AdSense. Nous
comptabilisons les impressions uniquement quand notre code AdSense est
exécuté par le navigateur d'un utilisateur. Plusieurs facteurs peuvent par
conséquent entraîner des différences entre les impressions que vous
enregistrez et celles qui figurent dans votre compte Google AdSense. Voici
quelques exemples de cas où le code d'annonce n'est pas exécuté :

· robots d'indexation (spiders), robots ou systèmes d'exploration lancés
par d'autres moteurs de recherche ;
· navigateurs dans lesquels les scripts JavaScript n'ont pas été activés
ou qui ne reconnaissent pas ce type de script ;
· navigateurs qui ne prennent pas en charge la balise <iframe> ;
· programmes qui ont été écrits pour récupérer le contenu de sites Web.

De plus, les rapports sur les impressions et les clics sont généralement
mis à jour toutes les quinze à trente minutes. Un délai de 24 heures ou
plus peut parfois intervenir avant la mise à jour des rapports sur le site
Web. Nous vous confirmons cependant que le suivi de vos clics et de vos
impressions est assuré même si ces éléments n'apparaissent pas
immédiatement dans vos rapports.

Pour toute question, n'hésitez pas à nous envoyer un courrier électronique
à l'adresse adsense-fr@google.com.

Cordialement,

L'équipe Google

Le script de tracking étant lui aussi en javascript, je vote pour une excuse bidon :roll:
Je vais tenter de faire des tests pour voir si le script de tracking ne bugouile pas.

Sinon, j'affiche Adsense sur toutes les pages, et webalize est installé su mon site. J'ai donc 3 stats différentes, aucune n'ayant rien à voir avec les autres. Pour un même jour :

Adsense: 13 000 pages
Tracking : 132 000 pages
Webalize : 43 000 pages.
 
WRInaute occasionnel
Pour ce qui est des pages vues, à mon avis rien ne vaut un bon vieux petit compteur fait maison avec un fichier texte...
 
WRInaute impliqué
Le script ne semble plus être accessible depuis un mois...
Quelqu'un pourrait dire s'il y a une raison précise??

Plutôt que de faire passer le script par email, quelqu'un pourrait-il l'héberger sur une URL?

THX!
 
WRInaute impliqué
Ca m'interesse egalement svp..
J'ai installe le script d'olivier, mais il ne semble pas marcher....
Il enregistre 20-30% des clics..
Et j'ai moi meme teste avec Mozilla, il ne semble pas marche avec....
 
WRInaute impliqué
La question est donc de trouver un généreux donnateur qui possède une version du script, pour que paperclips la charge sur son ftp...
Je sais je suis lourd, mais j'enfonce le clou :lol:
 
WRInaute occasionnel
Salut à tous,

j'essaye en vain de réinstaller le script, qui me comptabilise parfaitement les affichages, mais malheureusement pas les clics... J'ai testé à la main, autrement dit en appelant la fonction log.php avec mes paramètres, mais sinon, cela ne comptabilise que mes affichages...

J'ai utilisé IE pour palier au problème de Firefox...


Donc je m'interroge sur 2 choses :
- le paramètre zone correspond simplement à une référence que je choisis, et n'impacte pas la comptabilisation des clics ?
- le code javascript est à insérer entre les balises head ou body ?

Si quelqiu'un a la solution ! :)


Merci !
Stéphane
 
WRInaute impliqué
thefa a dit:
a.nonyme4ever a dit:
paperclips a dit:
heo. on dirait que c'est mort. Selon moi plusieurs ont le scripts, svp faites un effort

Le script est dispo là : http://www.lacoccinelle.net/adsense_code.php :)

De rien ;-)

Bonjour !

Cette page donne accès à la version du 23 May 2004 à 13h28. Je ne vois pas la gestion des channels de Google Adsense. Est ce que c'est vraiment la dernière version ?

Merci.

De même il n'y a pas dans cette vesion la gestion des formats alors qu'il me semble bien que dans al dernière version qui était sortie, les formats étaient gérés...

Comme je le disais dans une autre discussion, il faudrait peut être redémarrer de cette version et former un petiot groupe qui fasse des évolutions sur ce script...
 
Nouveau WRInaute
Pourquoi pas... mais par curiosité, j'aimerais bien comprendre ce qui se passe autour de ce script... Est ce que les developpeurs initiaux ont décidé de le garder pour eux? Pour quelles raisons?
 
WRInaute occasionnel
en ce qui me concerne, ce script me suffirait mais pour moi il ne marche pas. :?
la page de recapitulatifs des résultats ne s'affichent pas corrctement comme si il y avait une erreur de syntaxe (mais je ne la vois pas :?: )
j'obtiens dans la page le code php à partir du premier array ????

array('_' => 'Heures', 'color' => '#F0F0F0'), 'clicks_zone' => array('_' => 'Clicks', 'color' => '#9999FF'), 'counts_zone' => array('_' => 'Affichages', 'color' => '#99FF99'), 'ratio_zone' => array('_' => 'CTR (%)', 'color' => '#FF9999'), 'images_zone' => array('_' => '', 'color' => '#F0F0F0'), 'images_comp' => array('_' => 'Comparaison
du taux
', 'color' => '#F0F0F0'), 'ratio_comp' => array('_' => 'de click (%)', 'color' => '#FFFF99'), 'clicks_all' => array('_' => 'Clicks', 'color' => '#BBBBFF'), 'counts_all' => array('_' => 'Affichages', 'color' => '#BBFFBB'), 'ratio_all' => array('_' => 'CTR (%)', 'color' => '#FFBBBB'), 'images_all' => array('_' => '', 'color' => '#F0F0F0')); $max = array( 'clicks_zone' => 1, 'counts_zone' => 1, 'ratio_zone' => 0.00001, 'ratio_comp' => 100, 'clicks_all' => 1, 'counts_all' => 1, 'ratio_all' => 0.00001); $results = mysql_query("SELECT ref FROM adsense WHERE TO_DAYS(date) >= TO_DAYS('$year1-$month1-$day1') AND TO_DAYS(date) <= TO_DAYS('$year2-$month2-$day2') GROUP BY ref"); $refs = array(); while ($refs[] = mysql_fetch_object($results)); array_pop($refs); $results = mysql_query("SELECT url, SUM(counts) AS total FROM adsense WHERE url != '#' AND ref LIKE '".($ref == '' ? '%' : $ref)."' AND TO_DAYS(date) >= TO_DAYS('$year1-$month1-$day1') AND TO_DAYS(date) <= TO_DAYS('$year2-$month2-$day2') GROUP BY url"); $urls = array(); while ($urls[] = mysql_fetch_object($results)); array_pop($urls); $zones = array('zone','all'); for ($i = 0; $i < 24; $i++) { reset($zones); while (list(,$zone) = each($zones)) { if ($ref == '' && $url == '' || $zone == 'all' && ($ref != '' && $url == '' || $ref == '' && $url != '')) { $td["images_$zone"]['_'] = 'Toutes les zones
Toutes les pubs'; $where_aff = "ref LIKE '%' AND url = '#'"; $where_clk = "ref LIKE '%' AND url != '#'"; } elseif ($zone == 'zone' && $ref != '' && $url == '' || $zone == 'all' && $ref != '' && $url != '') { $td["images_$zone"]['_'] = "Cette zone ($ref)
Toutes les pubs"; $where_aff = "ref = '$ref' AND url = '#'"; $where_clk = "ref = '$ref' AND url != '#'"; } elseif ($zone == 'zone' && $ref == '' && $url != '') { $td["images_$zone"]['_'] = "Toutes les zones
Cette pub ($url)"; $where_aff = "ref LIKE '%' AND url = '#'"; $where_clk = "ref LIKE '%' AND url = '$url'"; } elseif ($zone == 'zone' && $ref != '' && $url != '') { $td["images_$zone"]['_'] = "Cette zone ($ref)
Cette pub ($url)"; $where_aff = "ref LIKE '$ref' AND url = '#'"; $where_clk = "ref LIKE '$ref' AND url = '$url'"; } $aff = mysql_fetch_object(mysql_query(" SELECT SUM(counts) AS Counts FROM adsense WHERE TO_DAYS(date) >= TO_DAYS('$year1-$month1-$day1') AND TO_DAYS(date) <= TO_DAYS('$year2-$month2-$day2') AND HOUR(date) = $i AND $where_aff")); $clicks = mysql_fetch_object(mysql_query(" SELECT SUM(counts) AS Clicks FROM adsense WHERE TO_DAYS(date) >= TO_DAYS('$year1-$month1-$day1') AND TO_DAYS(date) <= TO_DAYS('$year2-$month2-$day2') AND HOUR(date) = $i AND $where_clk")); $max["clicks_$zone"] = max($clicks->Clicks, $max["clicks_$zone"]); $max["counts_$zone"] = max($aff->Counts, $max["counts_$zone"]); $max["ratio_$zone"] = max($aff->Counts == 0 ? 0 : $clicks->Clicks/$aff->Counts*100, $max["ratio_$zone"]); $td["clicks_$zone"][$i] = $clicks->Clicks; $td["counts_$zone"][$i] = $aff->Counts; $td["ratio_$zone"][$i] = round($aff->Counts == 0 ? 0 : $clicks->Clicks/$aff->Counts * 100,2); } $td['ratio_comp'][$i] = round($td['clicks_all'][$i] == 0 ? 0 : $td['clicks_zone'][$i]/$td['clicks_all'][$i] * 100,2); $td['hours'][$i] = $i.'h'; } $td['hours'][24] = 'Total'; $td['clicks_zone'][24] = array_sum($td['clicks_zone']); $td['counts_zone'][24] = array_sum($td['counts_zone']); $td['ratio_zone'][24] = round($td['counts_zone'][24] == 0 ? 0 : $td['clicks_zone'][24]/$td['counts_zone'][24] * 100,2); $td['clicks_all'][24] = array_sum($td['clicks_all']); $td['counts_all'][24] = array_sum($td['counts_all']); $td['ratio_all'][24] = round($td['counts_all'][24] == 0 ? 0 : $td['clicks_all'][24]/$td['counts_all'][24] * 100,2); $td['ratio_comp'][24] = round($td['clicks_all'][24] == 0 ? 0 : $td['clicks_zone'][24]/$td['clicks_all'][24] * 100,2); for ($i = 0; $i <= 24; $i++) { reset($td); while (list($key,) = each($td)) { if (preg_match('~images|hour~i',$key) || !preg_match('~_(zone|all|comp)~i',$key,$match)) continue; if (!isset($td['images_'.$match[1]][$i])) $td['images_'.$match[1]][$i] = $i == 24 ? '' : ''; $td['images_'.$match[1]][$i] .= ''; } } ?>
Stats Adsense




qqun a-t-il le meme pb ?
 
WRInaute discret
autre pb remarqué

J'ai aussi remarquer que faire sous IE : 'un click droit' -> 'ouvrir dans une nouvelle fenetre' compte double dans les stats

Toujours pas de solution pour contabiliser les clics des internautes utilisant firefox ?
 
WRInaute occasionnel
Bonjour, Ce script comptabilise parfaitement les affichages mais pas les clicks sous IE et FIREFOX alors d'ou vient le probleme ??? J'ai mis le javascript dans le body, faut-il le mettre dans le head ???
Merci d'avance
EDIT : ca y est j'ai trouvé, je n'avais aps assez regardé les précédents posts... il suffit de placer le javazscript APRES le script de pub google...
 
WRInaute impliqué
+1

Moi qui voulait m'installer un outil pour voir un peu ce qui se passe

icon_hannn.gif
 
WRInaute impliqué
Pour analyser les clicks et déduire lesquels payent bien, je suppose qu'on regarde le CTR (%) mais comment ca marche exactement ? Ca donne le CPM ? on regarde en fonction des urls lesquels sont les plus élevés ?
 
Nouveau WRInaute
une ame charitable qui aurait la v2 pourrait-elle la remettre en ligne quelque part siouplait ?
 
Nouveau WRInaute
Bonjour,

Je suis interessé par ce script qui a l'air pas mal du tout

seulement le lien du topic initial est 404 donc c'est un peu génant. En parcourant le topic on trouve cette adresse : http://www.lacoccinelle.net/adsense_code.php seulement je pense qu'il s'agit de la V1 et je préférerais utiliser la V2 sur mon site.

Donc serait il possible que quelqu'un donne un lien valide pour la V2 ou bien m'envoie le script en me demandant préalablement mon mail par MP ?

merci d'avance
 
Nouveau WRInaute
plus personne par ici ? je suis sur que qqun peut mettre en ligne ce script, ça serait sympa :)
 
WRInaute passionné
Un petit UP pour qu'une gentille damoiselle ou un gentil damonsieur upload pour que nous puissions y télécharger :D

Merci d'avance
 
A
Anonymous
Guest
Bon alors je ne sais pas si c'est ce script que vous cherchez mais, il y a deux mois, j'avais récupéré un script de tracking en passant par WRI (je ne me souviens plus du post).
J'avais copié/collé le code de la page au cas ou elle disparaisse et je n'ai pas eu le temps de regarder ce code depuis.

Le code est sur cette page maintenant :
http://www.xperienss.com/adsense.html

Je ne suis pas sur que c'est celui que vous cherchez...
 
Nouveau WRInaute
Moi ça comptabilise bien le nombre d'affichages mais pas le nombre de clicks ... j'ai vérifié avec le truc de adsense et j'ai bien des clics ...

J'ai cru lire que le probleme venait que les visiteurs qui cliquaient posséder firefox (du moins un nav de la famille Gecko) ... comment remédier à ce problème ... ?

Merci ;o)
 
WRInaute passionné
re-salut

j'ai pas comprit le code de zone dans le javascript, que faut t'il mettre ?

Code:
4) Installation du code Javascript :
Le code Javascript de récupération des stats à mettre sur vos pages :
Doivent être modifiés :
- l'indice de zone (lettres ou chiffres exclusivement [a-z0-9], mais tout attaché et 25 caractères max), qui définiront les zones de votre site plutôt que d'utiliser vos urls
- le lien vers le fichier de log des informations (log.php)
<script type="text/javascript">
<!--
ref = 'REFERENCE_DE_ZONE'; // Notez les guillements (simples ou doubles) autour de la référence de zone
bug = new Image();
bug.src = 'http://www.votresite.net/log.php?ref=' + ref + '&url=count';
function log() { bug.src = 'http://www.votresite.net/log.php?ref=' + ref + '&url=' + window.status; }
var elements;
elements = document.getElementsByTagName('iframe');
for (var i = 0; i < elements.length; i++) {
if ((elements[i].src.indexOf('googlesyndication.com') > -1) || (elements[i].src.indexOf('googleadservices.com') > -1)) { elements[i].onfocus = log; }
}
//-->
</script>
Si tout va bien, vous pourrez voir votre table se remplir petit à petit sur phpMyAdmin...
 
WRInaute passionné
g l'impression que je vais attendre desp lombes avant d'avoir al reponse

personen ne l'a installer poru me dire ?
 
Discussions similaires
Haut