| Validation XHTML version 2.1 [message #10673] |
Mon, 16 January 2006 15:16  |
Olive Messages: 6 Registered: May 2005 Location: Aigueperse, Puy de dome |
Junior Member |
|
|
Bonjour à tous,
Je profite de l'enfoncement dans les trefonds du forum du fil sur la validation pour remettre le sujet sur la table...
Comme d'autres -psychopathes geeks-, je souhaiterais obtenir une validité XHTML parfaite de mes pages y compris avec le bout de script de ce merveilleux outil qu'est phpMyVisites (un grand merci au passage à tous les developpeurs du projet).
Voici l'erreur qu'on obtient :
------------------------------------------------------------ ----
This page is not Valid -//W3C//DTD XHTML 1.0 Transitional//FR!
1. Error Line *** column *: document type does not allow element "NOSCRIPT" here; missing one of "OBJECT", "APPLET", "MAP", "IFRAME", "BUTTON", "INS", "DEL" start-tag.
<noscript>
The mentioned element is not allowed to appear in the context in which you've placed it; the other mentioned elements are the only ones that are both allowed there and can contain the element mentioned. This might mean that you need a containing element, or possibly that you've forgotten to close a previous element.
One possible cause for this message is that you have attempted to put a block-level element (such as "<p>" or "<table>") inside an inline element (such as "<a>", "<span>", or "<font>").
------------------------------------------------------------ ----
Comme chez les geeks, il y en a qui croit en faire partie et d'autres qui le sont vraiment, j'aurais aimé savoir si quelqu'un s'etait repencher sur la question...
Bonne journée à tous.
Olivier
|
|
|
|
| Re : Validation XHTML version 2.1 [message #10784] |
Thu, 19 January 2006 18:31   |
GizMecano Messages: 32 Registered: November 2004 Location: Entre la chaise et l'écra... |
Member |
|
|
Hello,
| Marco | Comme repondu dans les autres sujets sur la question, oui ça va venir.
|
Sans le moins du monde vouloir mettre la pression aux (gentils) développeurs, je signale tout de même que la version française de MozillaZine semble désormais utiliser PHPMV, (ce billet amusant pour confirmation), et que la page d'accueil est tout à fait valide.
Ne serait-il pas possible, pour gagner du temps, de chercher une solution par là, en voyant comment ils ont procédé pour rendre votre code valide ?
Ce n'est, bien entendu, qu'une suggestion. Mais soyez certains que PHPMV gagnerait beaucoup (et beaucoup d'utilisateurs sans doute) si ce petit pas était franchi prochainement...
Ciao,
Which are the two basic principles of Windows OS administration?
1. For minor problems, reboot.
2. For major ones, reinstall.
|
|
|
|
Re : Validation XHTML version 2.1 [message #10807] |
Sat, 21 January 2006 14:08   |
GizMecano Messages: 32 Registered: November 2004 Location: Entre la chaise et l'écra... |
Member |
|
|
Hello,
| Omnisilver |
Or apparemment le but de l'équipe phpmyvisites est la validité XHTML (pas forcément strict, je ne sais pas, je n'en fais pas partie )
|
Certes, mais je me demandais surtout, (sans rien connaître au JS, j'en conviens), s'il n'y aurait cependant pas une piste de ce côté-ci. Après tout, ce n'est qu'une évolution, on ne repart pas totalement de rien, non ?
Ciao,
Which are the two basic principles of Windows OS administration?
1. For minor problems, reboot.
2. For major ones, reinstall.
|
|
|
|
| Re : Validation XHTML version 2.1 [message #10858] |
Mon, 23 January 2006 21:36   |
Marco Messages: 124 Registered: October 2003 Location: Cote d'Azur |
Senior Member |
|
|
Bon voici la solution pour ceux qui veulent faire la modif à la main :
Editer et remplacer le contenu de phpmyvisites.js par :
// http://www.phpmyvisites.net/
// License GNU/GPL (http://www.gnu.org/copyleft/gpl.html)
function pmv_log(pmv_site, pmv_url, pmv_pname, pmv_vars)
{
function plugMoz(pmv_pl) {
if (pmv_tm.indexOf(pmv_pl) != -1 && (navigator.mimeTypes[pmv_pl].enabledPlugin != null))
return '1';
return '0';
}
function plugIE( pmv_plug ){
pmv_find = false;
document.write('<SCR' + 'IPT LANGUAGE=VBScript>\n on error resume next \n pmv_find = IsObject(CreateObject("' + pmv_plug + '"))</SCR' + 'IPT>\n');
if (pmv_find) return '1';
return '0';
}
var pmv_jav='0'; if(navigator.javaEnabled()) pmv_jav='1';
var pmv_agent = navigator.userAgent.toLowerCase();
var pmv_moz = (navigator.appName.indexOf("Netscape") != -1);
var pmv_ie= (pmv_agent.indexOf("msie") != -1);
var pmv_win = ((pmv_agent.indexOf("win")!=-1) || (pmv_agent.indexOf("32bit")!=-1));
if (!pmv_win || pmv_moz){
pmv_tm = '';
for (var i=0; i < navigator.mimeTypes.length; i++)
pmv_tm += navigator.mimeTypes[i].type.toLowerCase();
var pmv_dir = plugMoz("application/x-director");
var pmv_fla = plugMoz("application/x-shockwave-flash");
var pmv_pdf = plugMoz("application/pdf");
var pmv_qt = plugMoz("video/quicktime");
var pmv_rea = plugMoz("audio/x-pn-realaudio-plugin");
var pmv_wma = plugMoz("application/x-mplayer2");
} else if (pmv_win && pmv_ie){
var pmv_dir = plugIE("SWCtl.SWCtl.1");
var pmv_fla = plugIE("ShockwaveFlash.ShockwaveFlash.1");
var pmv_pdf = '0';
if (plugIE("PDF.PdfCtrl.1") == '1' || plugIE('PDF.PdfCtrl.5') == '1' || plugIE('PDF.PdfCtrl.6') == '1')
pmv_pdf = '1';
var pmv_qt = plugIE("QuickTimeCheckObject.QuickTimeCheck.1");
var pmv_rea = plugIE("rmocx.RealPlayer G2 Control.1");
var pmv_wma = plugIE("MediaPlayer.MediaPlayer.1");
}
var getvars='';
for (var i in pmv_vars){
getvars = getvars + '&a_vars['+ escape(i) + ']' + "=" + escape(pmv_vars[i]);
}
pmv_do = document; pmv_da = new Date();
try { rtu = top.pmv_do.referrer; } catch(e) { rtu = pmv_do.referrer }
src = pmv_url;
src += '?url='+escape(pmv_do.location)+'&pagename='+escape(pmv_pname)+getvars;
src += '&id='+pmv_site+'&res='+screen.width+'x'+screen.height+'&col='+screen.colorDepth;
src += '&h='+pmv_da.getHours()+'&m='+pmv_da.getMinutes()+'&s='+pmv_da.getSeconds();
src += '&flash='+pmv_fla+'&director='+pmv_dir+'&quicktime='+pmv_qt+'&realplayer='+pmv_rea;
src += '&pdf='+pmv_pdf+'&windowsmedia='+pmv_wma+'&java='+pmv_jav+'&ref='+escape(rtu);
pmv_do.writeln('<a href="http://www.phpmyvisites.net/" title="phpMyVisites | Open source web analytics" onclick="window.open(this.href);return(false);">');
pmv_do.writeln('<img src="'+src+'" alt="phpMyVisites" style="border:0" />');
pmv_do.writeln('</a>');
}
pmv_log(phpmyvisitesSite, phpmyvisitesURL, pagename, a_vars);
Puis modifier le marqueur :
<!-- phpmyvisites -->
<script type="text/javascript">
<!--
var a_vars = Array();
var pagename='';
var phpmyvisitesSite = 1;
var phpmyvisitesURL = "http://urldusite/phpmyvisites.php";
//-->
</script>
<script src="http://urldusite/phpmyvisites.js" type="text/javascript"></script>
<noscript>
<p>
<a href="http://www.phpmyvisites.net/" title="phpMyVisites | Open source web analytics" onclick="window.open(this.href);return(false);">
<img src="http://urldusite/phpmyvisites.php" alt="phpMyVisites" style="border:0" />
</a>
</p>
</noscript>
<!-- /phpmyvisites -->
Remplacer le chemin urldusite par l'url de votre phpMyVisites bien entendu.
N'oubliez pas de faire des retours.
Bye.
Marco.
|
|
|
|
| Re : Validation XHTML version 2.1 [message #11015] |
Wed, 01 February 2006 14:26   |
totof78 Messages: 17 Registered: November 2005 |
Junior Member |
|
|
Pour ma part, j'ajoute
<object> avant <noscript>
et
</object> après </noscript>
Ce qui donne :
<!-- phpmyvisites -->
<a href="[url]http://www.phpmyvisites.net/[/url]" title="phpMyVisites | Open source web analytics" onclick="window.open(this.href);return(false);">
<script type="text/javascript">
<!--
var a_vars = Array();
var pagename='';
var phpmyvisitesSite = 1;
var phpmyvisitesURL = "[url]http://server/phpmv2/phpmyvisites.php[/url]";
//-->
</script>
<script language=javascript src="[url]http://server/phpmv2/phpmyvisites.js[/url]" type="text/javascript"></script>
<object>
<noscript>
<p>phpMyVisites | Open source web analytics
<img src="[url]http://server/phpmv2/phpmyvisites.php[/url]" alt="phpMyVisites" style="border:0" />
</p>
</noscript>
</object>
</a>
<!-- /phpmyvisites -->
Envie de vous exprimer sur l'actualité ?
De créer un blog gratuit?
http://exprimezvous.info
|
|
|
| Re : Validation XHTML version 2.1 [message #11167] |
Thu, 09 February 2006 14:05   |
-SB- Messages: 11 Registered: February 2006 |
Junior Member |
|
|
Salut.
Je vais aller encore un peu plus loin. En effet avec le code de Marco 3 posts au dessus c'est valide xhtml 1.1. Cependant il y a deux soucis. Comme indiqué ici, il est préférable d'envoyer le xhtml au format application/xhtml+xml plutôt que text/html. D'où les deux erreurs suivantes :
- les variables déclarées dans le premier script (intégrée dans la page) ne sont pas reprises dans le deuxième (phpmyvisites.js) et on obtient
Error: phpmyvisitesSite is not defined
Source file: http://urldusite/phpmv2/phpmyvisites.js
Line: 60
On peut inclure les variables dans le deuxième script mais alors je pense qu'on ne peut gérer qu'un site par script.
*********************************************
- document.writeln est également incorrect ->
Error: Object cannot be created in this context = NS_ERROR_DOM_NOT_SUPPORTED_ERR
Source file: http://urldusite/phpmv2/phpmyvisites.js
Line: 56
Il faudrait passer par un code de type document.createElement("img") - > document.createAttribute("src") -> setAttributeNode
|
|
|
| Re : Validation XHTML version 2.1 [message #11227] |
Mon, 13 February 2006 12:04   |
Marco Messages: 124 Registered: October 2003 Location: Cote d'Azur |
Senior Member |
|
|
Bonjour,
pour totof78, je ne vois pas du tout l'intérêt des balises <object>, qu'est-ce que ça apporte ?
Pour -SB-, c'est un sujet déjà abordé. Première chose ce n'est pas à moi de décider à la place de l'utilisateur quelle norme il veut utiliser pour son site. Ensuite j'aime bien ce style d'affirmation : | Citation : | il est préférable
|
Préférable pour qui, pour quoi ?
C'est très satisfaisant intellectuellement d'envoyer le code en tant que application/xhtml+xml, sauf que dans la pratique c'est inutilisable avec les navigateurs courants.
Pour la remarque suivante c'est le parfait exemple de ce que je viens de dire, ce choix implique l'obligation d'utiliser le dom, hors seuls les navigateurs très récents le comprennent. Et le but de phpmv est quand même de comptabiliser les visites et non d'être compatible avec une norme.
Attention d'être pragmatique sur la question et non intégriste.
Bye.
Marco.
|
|
|
|
| Re : Validation XHTML version 2.1 [message #11234] |
Mon, 13 February 2006 15:25  |
Marco Messages: 124 Registered: October 2003 Location: Cote d'Azur |
Senior Member |
|
|
Première chose on s'est mal compris, je n'ai jamais traité qui que ce soit d'intégriste ici, j'ai rappellé quelque chose qui me parait évidente pour clarifier ma position.
"Préférable", "plus performant", "plus de fonctionnalités". Je suis tout à fait d'accord avec les mots, par contre j'ai beaucoup de mal à voir la relation avec la réalité d'une page web standard.
Pour ton site tu fais tes choix techniques selon tes aspirations et tes contraintes et c'est très bien. Mais pour phpmv on est dans une logique différente et on a choisis de fournir un outil utilisable par le plus grand nombre, ce qui pose comme contrainte d'être au moins compatible html 4.
Forcement si ton site n'est visible que par des navigateurs comprenant le dom, tu ne dois pas avoir beaucoup de visiteurs qui visitent ton site sans rien voir.
Par contre je ne suis pas d'accord avec toi, un site bien codé en xhtml sera tout à fait visualisable par un vieux navigateur, même un navigateur texte ou auditif, ce qui n'est pas le cas avec le html 4.
J'avais développé un tag DOM il y a 2 ans suite à une demande du même type que la tienne mais il n'a pas été maintenu car jugé sans intérêt. Très peu de sites envoient leurs pages en xml, et beaucoup, comme toi, revendiquent des notions très techniques pour le faire, mais concrétement pour l'utilisateur, à l'heure actuelle, personne n'a réussi à me convaincre de l'intérêt que ça represente. Le seul véritable intérêt que je vois et pour le traitement des pages par d'autres programmes, là le fait d'avoir du xhtml est très pratique. Par contre les désavantages sont très nombreux, comme devoir tester le navigateur pour savoir quel format envoyer ou l'impossibilité d'utiliser le javascript en dehors du DOM.
Moi aussi j'ai déjà developper en xhtml en envoyant du xml, c'est un choix qu'on doit faire quand on développe en web. Et j'en suis revenu. Et depuis j'attends que quelqu'un me démontre l'intérêt d'envoyer du xml, à part pour le plaisir d'être conforme aux normes ou d'aimer relever des défis de codage, sauf cas particuliers qui exigent d'avoir un contenu xml. Pour préciser, je comprends bien l'intérêt de la démarche intellectuelle, mais la réalité des navigateurs ne permet pas de respecter cette norme, par exemple aucun navigateur n'implémente correctement le DOM, même si gecko est pas trop mauvais.
Bye.
Marco.
|
|
|