Valider automatiquement une page avec w3c (standards html xhtml)

Soyez le premier à donner votre avis sur cette source.

Vue 9 676 fois - Téléchargée 595 fois

Description

Ce script permet de valider automatiquement une page HTML depuis votre site.
Voici sa structure :
http://www.monsite.com/page-a-valider.php => Affiche une image de chargement, et charge le script ajax.js.
Ajax.js => Récupère le contenu de la page ajax.php?url=http://www.monsite.com/page-a-valider.php
ajax.php => Charge la page de validation http://validator.w3c.com/check?uri=http://www.monsite.com/page-a-valider.php
Puis il envoie a la page ajax.js soit :
-valid
-invalid
-error
En fonction de la validité de la page http://www.monsite.com/page-a-valider.php
Puis le script ajax.js affiche une image correspondant au résultat.

Source / Exemple :


Tout est dans le zip !

Conclusion :


Ce script est pratique car il permet de voir en ouvrant une seule page si elle respecte les standards du Web.
En plus, contrairement à l'image fournie par W3C, le script affiche que la page est valide uniquement si elle l'est.
Ensuite, AJAX permet le chargement une fois la page chargé ce qui est beaucoup moins lourd pour l'utilisateur.
Testé sous IE7, et firefox 2.0.0.12.

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
1
Date d'inscription
vendredi 21 novembre 2003
Statut
Membre
Dernière intervention
24 juillet 2008

Bonjour,

Pour prendre en compte facilement mes sites avec l'url rewriting, j'ai remplacer tout simplement :

var page='<?php echo 'http://'.htmlspecialchars($_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF']); ?>';

par

var page = document.URL;

Ce qui permet d'obtenir la page avec une url bien formée du coté client du style http://monsite.tld/categorie/article1.html

et non un truc du style

http://monsite.tls/index.php?action=afficher&quoi=article&ou=categorie&lequel=1

l'url peut être longue et les erreurs nombreuses ... :)
Messages postés
496
Date d'inscription
mercredi 30 juin 2004
Statut
Membre
Dernière intervention
29 juillet 2009
1
10/10 quand même!
Messages postés
1123
Date d'inscription
mardi 8 janvier 2002
Statut
Modérateur
Dernière intervention
21 avril 2009
1
L'idée est sympa mais le code, en l'état actuel des choses, n'est pas conseillé :
Aucune vérification des valeurs : file peux ne pas fonctionner si le wrappers sont désactivés, entre autre.
De plus ce qui est fait en php pourrait l'être fait en javascript directement, ce qui éviterait des appels inutiles. De plus, j'ose même pas imaginer l'état du site du W3C si un site qui implémente un systeme de ce genre à 1000 visiteurs en même temps ! On se rapproche d'un attaque DoS.

Et si en plus plusieurs personnes utilisent le même principe là, on évolue sur une attaque de type DDoS.

Normallement, en bonne théorie que cela doit être, un site web n'est validé qu'une fois, ensuite, si le webmaster le souhaite, il peux placer l'image de la valdité sur son site, mais en dur ! Il doit être responsable du contenu, et donc effectuer un travail adéquat pour effectuer un rendu correct (si les visiteurs laissent des messages, les mettre en bbcode, wiki ou autre afin de parser le message et afficher un html parsé correctement).

Ce système est donc à déconseiller.
Messages postés
496
Date d'inscription
mercredi 30 juin 2004
Statut
Membre
Dernière intervention
29 juillet 2009
1
Excellente idée pour des questions de développement mais pas forcément pour l'internaute qui voit "non valid"!
Mais pourquoi tu ne crée pas simplement une image avec PHP?
Tu importe le logo rouge ou bleu selon la validité de ta page...
Messages postés
129
Date d'inscription
mercredi 16 février 2005
Statut
Membre
Dernière intervention
15 février 2010
4
Une bonne idée pour ceux qui crée des sites à pages dynamiques.
8/10.
Afficher les 9 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.