Plan de site Navigation
Blog & Blues Techniques et Standards de la Qualité Web

Accueil > weblog


- Lire le billet précédent - Lire le billet suivant -

Google AdSense, ou comment générer à son insu un code invalide

Par Laurent Denis, le 27 août 2004.

Petit exemple de code final généré par le javascript de Google-Adsense :

<iframe
   name="google_ads_frame"
   width="160" height="600"
   frameborder="0"
   src="http://pagead2.googlesyndication.com/pagead/ads?client=...&random=1093245617281&alt_color=EEEEEE&format=160x600_as&output=html&channel=6401480114&url=http%3A%2F%2Fwww.mataf.net%2F&color_bg=EEEEEE&color_text=000000&color_link=000000&color_url=007777&color_border=007777"
   marginwidth="0"
   marginheight="0"
   vspace="0"
   hspace="0"
   allowtransparency="true"
   scrolling="no">
       <img
       height="1"
       width="1"
       border="0"
       src="http://pagead2.googlesyndication.com/pagead/imp.gif&event=noiframe" />
</iframe>

Et pour le contenu de l'iframe :

<html>
<head>
<style><!--
.ch{cursor:pointer;cursor:hand}a.search:link { color: #ffffff }a.search:visited { color: #ffffff }a.search:hover { color: #ffffff }a.search:active { color: #ffffff }body { background-color: transparent; }  //--></style>
<script>
<!--
function ss(w,id) {window.status = w;return true;}function cs(){window.status='';}function ca(a) {  top.location.href=document.getElementById(a).href;}function ga(o,e) {if (document.getElementById) {a=o.id.substring(1);p = "";r = "";g = e.target;if (g) {t = g.id;f = g.parentNode;if (f) {p = f.id;h = f.parentNode;if (h)r = h.id;}} else {h = e.srcElement;f = h.parentNode;if (f)p = f.id;t = h.id;}if (t==a || p==a || r==a)return true;top.location.href=document.getElementById(a).href;}}
//-->
</script>
</head>
<body bgcolor="#ffffff" link="#000000" alink="#000000" vlink="#000000" leftMargin="0" topMargin="0" marginwidth="0" marginheight="0">
<table width="160" height="600" cellspacing="1" cellpadding="0" border="0" bgcolor="#007777"><tr><td width="158" height="13" align="left" valign="middle"><a href="..." target="_blank"><font style="font-size:11px" face="arial,sans-serif" color="#ffffff">Annonces Google</font></a></td></tr><tr><td width="158" height="" align="" valign="top">
   <table width="158" height="" cellspacing="0" cellpadding="0" border="0"><tr ><td width="158" height="116" align="left" valign="middle">
       <table width="158" height="114" cellspacing="0" cellpadding="0" border="0" bgcolor="#eeeeee"><tr><td id="taw0" class="ch" width="" height="" align="center" valign="center" onFocus="ss('Afficher la page www.rcforexonline.com','aw0')" onMouseOver="ss('Afficher la page www.rcforexonline.com','aw0')"  onMouseOut="cs()" onClick="ga(this,event)">
           <table... (le reste est à l'avenant)

Maintenant, celui qui me trouve une DTD susceptible de valider cette soupe... gagne son poids en prospectus publicitaires smiley clin d'oeil

Trackbacks

Les trackbacks pour ce billet sont temporairement fermés en raison d'une série d'attaques de spam.

Commentaires

Shemu, le 27 août 2004

Outch* !
J'ai les yeux qui piquent !

GoogleAddict, le 27 août 2004

N'importe quoi !
Les sites avec Google AdSense sont valides, comme le Webmaster-hub que tu devrai pourtant connaître smiley triste

Laurent Denis, le 27 août 2004

Oui, le Hub est formellement valide, selon le validateur HTML du W3C... qui ignore le contenu généré par :

<script type="text/javascript"
   src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>

Le contenu généré par ce script est décrit ci-dessus...

Anubis, le 27 août 2004

Encore une fois une belle démonstration des limites du validateur, et du fait que la validation est encore loin d'être un label de qualité pour une page web, même si elle y aide bien.

Laurent Denis, le 28 août 2004

La validité est un des critères de qualité d'une page Web, mais il y en a bien d'autres. En d'autres termes, une page Web valide n'est pas nécessairement une bonne page Web, mais une page invalide a peu de chances d'être une bonne page.

Source : Help and FAQ for the Markup Validator ;)

JMF, le 05 septembre 2004

Il en faut jamais perdre de vue que la validation est la première étape de la vérification de la qualité d'une page et non la dernière.

Si une page ne valide pas, ce n'est même pas la peine d'aller plus loin mais ce n'est pas parce qu'elle valide qu'elle est de qualité. Une multitude d'autres critères entrent en ligne de compte.

Les commentaires pour ce billet sont temporairement fermés en raison d'une série d'attaques de spam.