IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Validation du HTML


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2013
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 4
    Par défaut Validation du HTML
    Bonjour,
    Je suis a la recherche d'un script de validation HTML utilisable en php
    Je m'explique.
    Sur notre site de e-commerce, nous permettons aux webmasters de saisir des bloc HTML que nous enregistrons en base pour l'afficher sur le site.
    Sauf que, l'erreur étant humaine, le code HTML n'est pas toujours valide.
    exemple : Balise <div> ouverte mais pas fermé. Ou inversement, trop de </div> donc forcément ça casse la page et des fois il ne s'en rendent compte que trop de temps après leur enregistrement.

    Donc je suis a la recherche d'un moyen pour valider le HTML qu'ils saisissent.

    J'ai d'abord regardé l'api w3c, mais 1) l'install est lourde 2) passer par du perl bof 3) je veux pas forcément que ce soit valide w3c, mais juste que toute balise html ouverte soit fermé (et là où elle doit l'être)

    j'ai cherché via l'utilisation de DOMDocument mais déjà 30 à 40 sec d'exécution du validate c'est chaud (je les imagines déjà cliquer 20 fois et s'énerver) et en plus il me sort des erreurs quand il n'y en a pas genre pour lui il faut obligatoirement un attribut name sur ce tag. Et en faisant exprès des erreurs il ne dit rien (genre un <p> dans une balise <a> ça lui fait ni chaud ni froids)

    J'ai testé Tidy via la méthod diagnose. C'est très bien sauf que pour lui les erreurs c'est uniquement une balise non connu. Pour lui une balise non fermer c'est juste un warning. certainement car il fait le repair lui même normalement, mais je ne souhaite pas faire cela. je préfère les laisser réparer eux même car les corrections automatique ne sont pas toujours fiable d'après ce que j'ai lu.

    l'idéal serait un module qui me dit par exemple
    Ligne 2 : Warning : Déclaration de CSS dans le body
    Ligne 3 : Error : Balise <Div> ouverte mais non fermer
    Ligne 5 : Error : Balise </P> non attendu
    ...

    voilà, est ce que vous connaissez un module de ce genre ?

    merci d'avance
    Karda

  2. #2
    Expert confirmé

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 418
    Par défaut
    Je me souviens avoir essayé le truc ci-dessous pour valider globalement du html. Le seul truc que j'avais remarqué est qu'il fallait supprimer les
    "&nbsp;" avant test car ça invalide le xml mais à part ça ça fonctionnait correctement. Mais bon c'était pour un éditeur assez limité et je ne sais pas si ça fonctionne dans tous les cas.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $dom = new DOMDocument;
    if(@$dom->loadXML($test)) return true; else return false;
    Sinon pour la balise p à l'intérieur d'une balise a, c'est maintenant autorisé en html5. La balise "a" a perdu son statut "en ligne" et l'on peut maintenant y mettre n'importe quoi (pour faire court).

  3. #3
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 693
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 693
    Par défaut
    Regarde du coté de HTML purifier ou de tidy
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2013
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 4
    Par défaut
    Pour le DomDocument avec le load xml je vois déjà le broblème de la balise <img> qui sortira en erreur si ils ne font pas <img/>HTML purifier est pas mal, mais il corrige et il corrige même trop de truc :/
    genre il enlève les id des balises <ul> ( je sais pas trop pourquoi ils en ont mis, mais je vois pas de raison de l'enlever)

  5. #5
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Le problème essentiel, c'est que ce que tu demandes, c'est pas vraiment une validation HTML et pas vraiment une validation XML non plus...
    Donc la question à se poser est plutôt : as-tu vraiment besoin que tes utilisateurs écrivent du HTML (surtout s'ils ne connaissent pas le HTML) ?
    Si la réponse est oui, passe par une phase de prévisualisation avant de confirmer les modifications : si la page est cassée, ils s'en rendront facilement compte.
    Si la réponse est non, alors le plus simple serait surement de passer par un éditeur incorporé genre TinyMCE ou CKEditor...
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  6. #6
    Futur Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2013
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 4
    Par défaut
    alors réponse oui ils ont besoin de saisir le code (plus tard on va leur installer un module style TinyMCE mais c'est pas possible sur notre plateform actuel)
    et on a bien une phase de prévisu et normalement ils sont aussi sensé vérifier une fois la mise en ligne fait. Mais pourtant ils ne le font pas toujours, et c'est sur l'informatique que ça retombe le problème

Discussions similaires

  1. [HTML] Validation page HTML
    Par Clorish dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 25/06/2007, 13h19
  2. [HTML] Validation page HTML 4.01
    Par wazazumi dans le forum Balisage (X)HTML et validation W3C
    Réponses: 10
    Dernier message: 18/01/2007, 16h46
  3. [W3C] erreur de validation W3C HTML 4.01 Transitional
    Par durand2504 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 14/03/2006, 10h47
  4. [W3C] validation WC3 HTML ou XHTML
    Par FoxLeRenard dans le forum Balisage (X)HTML et validation W3C
    Réponses: 12
    Dernier message: 14/12/2005, 18h57
  5. [Sécurité] Script PHP pour valider du HTML
    Par marcha dans le forum Langage
    Réponses: 2
    Dernier message: 06/11/2005, 14h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo