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 :

Souci des regex pour les puces donc erreurs W3C


Sujet :

Langage PHP

  1. #1
    retour
    Invité(e)
    Par défaut Souci des regex pour les puces donc erreurs W3C
    bonjour j'ai un souci de w3c donc il n'a pas d'érreur quand on ene met pas de message mais dés que je met un message il y as ces érreurs donc je croi c'est les regex du bbcode.php

    c'est pour ca que je met dans la rubrique regex :

    voilà les érreurs

    Line 57, Column 3: document type does not allow element "li" here; missing one of "ul", "ol", "menu", "dir" start-tag .
    <li></li>1 er puce<br /><br />✉
    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>").

    Line 58, Column 3: document type does not allow element "li" here; missing one of "ul", "ol", "menu", "dir" start-tag .
    <li></li>2 éme puces<br /><br />✉
    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>").

    Line 59, Column 3: document type does not allow element "li" here; missing one of "ul", "ol", "menu", "dir" start-tag .
    <li></li>3 eme puces<br /><br />✉
    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>").
    la page des codess des bbcodes.php

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    // Balise Des Listes Des Puces 
    $texte = preg_replace('`\&lt;liste\&gt;`isU', '<ul>$1</ul>', $texte); 
    $texte = preg_replace('`\&lt;puce\&gt;`isU', '<li>$2</li>', $texte); 
    $texte = preg_replace('`\<br \>`isU', '</puce>$3</liste>', $texte);
    je pense qu'il as oublier de fermé une fermeture et pour temps j'ai bien fermé

    merci d'avance
    Dernière modification par retour ; 03/10/2008 à 00h42.

  2. #2
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 868
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 868
    Points : 16 258
    Points
    16 258
    Par défaut
    Ce dont on a surtout besoin, c'est le code généré par le navigateur pour voir où le validateur bloque.

  3. #3
    retour
    Invité(e)
    Par défaut
    re

    voilà la page

    http://forum.exemple.free.fr/


    http://validator.w3.org/check?uri=ht...idator%2F1.591

    et le codes des puces

    html

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
          <input type="button" onclick="javascript:bbcode('&lt;puce&gt;', '');return(false)" value="liste" title="liste" alt="liste" />
    et le javasscript qui marche et qui n'a pas d'érreur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    	  // balise liste des puces 
     
    	  t=deblaie(/(\<\/liste\> )/g,t)
    	  t=remplace_tag(/<liste>(.+)/g, '<ul>$1</ul>', t)
    	  t=remplace_tag(/<puce>/g,'<li>',t)
    	  t=remplace_tag(/<br \/>/g,'</li></liste>',t)
    	  t=remblaie( t)
    et les bbcode.php

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    // Balise Des Listes Des Puces 
    $texte = preg_replace('`\&lt;liste\&gt;`isU', '<ul>$1</ul>', $texte); 
    $texte = preg_replace('`\&lt;puce\&gt;`isU', '<li>$2</li>', $texte); 
    $texte = preg_replace('`\<br \>`isU', '</puce></liste>', $texte);
    merci j'éspére il y as tout rien qui vous manque

    merci de votre aide

  4. #4
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 868
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 868
    Points : 16 258
    Points
    16 258
    Par défaut
    1. Je ne comprends pas pourquoi tu me montres ton input, alors que dans ton code PHP ça parle de <li>.
    2. Je ne comprends pas à quoi ça sert que tu nous montres le Javascript.
    3. Dans ton code PHP, on ne sait même pas à quoi correspond la variable $texte ni comment elle est utilisée.


    Le seul truc que je sais, c'est que dans ton code généré tu as un truc du style :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <li></li>1 er puce<br /><br />
    Alors qu'il te faudrait un truc du style :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <li>1 er puce</li>

    Autre chose, il serait bien de mettre un exemple du genre :
    - Texte que j'ai en entrée.
    - Traitement que je veux faire dessus.
    - Texte que je veux en sortie.

  5. #5
    retour
    Invité(e)
    Par défaut
    re

    en faite le but que j'ai mis c'est de fair ça :

    <puce>bonjour
    <puce>voilà
    <puce>ceux que je veux faire

    et donc dans bbcode j'ai bien mis <ul></ul> etc.... pour que les bbcodes soit valide sur w3 c

    merci

  6. #6
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 868
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 868
    Points : 16 258
    Points
    16 258
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $texte = '<liste>
    <puce>bonjour
    <puce>voilà
    <puce>ceux que je veux faire
    </liste>';
     
    $texte = preg_replace( '#<(liste)>(.*)</\\1>#Umsi', '<ul>$2</ul>', $texte );
    $texte = preg_replace( '#<puce>(.*)\n#Umsi', '<li>$1</li>', $texte );

  7. #7
    retour
    Invité(e)
    Par défaut
    merci mais il y as un souci

    quand je met ton code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    // Balise Des Listes Des Puces 
    $texte = preg_replace( '#<(liste)>(.*)</(\\1)>#Umsi', '<ul>$2</ul>', $texte );
    $texte = preg_replace( '#<puce>(.*)\n#Umsi', '<li>$1</li>', $texte );
    il n'a pas d'érreur mais il oublie de mettre les puces

    donc j'ai mis :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    // Balise Des Listes Des Puces 
    $texte = preg_replace( '#&lt;(liste)&gt;(.*)</(\\1)>#Umsi', '<ul>$2</ul>', $texte );
    $texte = preg_replace( '#&lt;puce&gt;(.*)\n#Umsi', '<li>$1</li>', $texte );
    là il remet les puces avec les érreurs

    merci de ton aide

  8. #8
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 868
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 868
    Points : 16 258
    Points
    16 258
    Par défaut
    Tant que je ne connaitrai pas la finalité de ton code, je ne pourrai pas t'aider !

    Je ne sais même pas ce que tu veux en faire et comment tu l'utilises !


    Et puis essaie de faire des phrases compréhensibles s'il te plait ...
    Et de répondre correctement aux questions qu'on te pose :

    Autre chose, il serait bien de mettre un exemple du genre :
    - Texte que j'ai en entrée.
    - Traitement que je veux faire dessus.
    - Texte que je veux en sortie.

  9. #9
    retour
    Invité(e)
    Par défaut
    re

    j'ai éssayé ton code à nouveau

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    // Balise Des Listes Des Puces 
    $texte = preg_replace( '#<(liste)>(.*)</(\\1)>#Umsi', '<ul>$2</ul>', $texte );
    $texte = preg_replace( '#<puce>(.*)\n#Umsi', '<li>$1</li>', $texte );
    là il n'a plus d'érreur mais il oublie de mettre les puces

    mais si je met ce code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    // Balise Des Listes Des Puces 
    $texte = preg_replace( '#&lt;(liste)&gt;(.*)</(\\1)>#Umsi', '<ul>$2</ul>', $texte );
    $texte = preg_replace( '#&lt;puce&gt;(.*)\n#Umsi', '<li>$1</li>', $texte );
    là il met les puces mais avec 3 érreurs

    et sur fire fox il oublie complétement les puces

    merci de m'aide

  10. #10
    retour
    Invité(e)
    Par défaut
    re j'ai éssayé de rentré tes phrases donc voilà

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    // Balise Des Listes Des Puces 
    $texte = '<liste>
    <puce>bonjour
    <puce>voilà
    <puce>ceux que je veux faire
    </liste>';
     
    $texte = preg_replace( '#<(liste)>(.*)</\\1>#Umsi', '<ul>$2</ul>', $texte );
    $texte = preg_replace( '#<puce>(.*)\n#Umsi', '<li>$1</li>', $texte );
    il met bien les puces c'est parfait mais avec 5 erreurs

    merci de ton aide

  11. #11
    retour
    Invité(e)
    Par défaut
    st

    j'ai regarder ce message :

    http://board.quick-web.com/bbfaq.php

    pour les puces

    donc j'ai mis ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    // Balise Des Listes Des Puces 
          $texte = str_replace('&lt;liste&gt;', '<ul>',$texte);
            $texte = str_replace('&lt;puce&gt;','<li>',$texte);
            $texte = str_replace('&lt;/puce&gt;','</li>',$texte);
            $texte = str_replace('&lt;/liste&gt;','</ul>',$texte);
    mais il oublie de mettre les puces sur fire fox

    avec des érreurs de w3c

    merci d'avance
    Dernière modification par 12monkeys ; 04/10/2008 à 23h31.

Discussions similaires

  1. [applet]utilser des infos pour les traiter dans une servlet
    Par jeromejanson dans le forum Applets
    Réponses: 5
    Dernier message: 07/03/2010, 23h22
  2. Des classes pour les liens en CSS
    Par Invité dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 08/03/2005, 14h31
  3. [debutant][JNI]Stocker des objet pour les rappeler plus tard
    Par Celenor dans le forum Entrée/Sortie
    Réponses: 7
    Dernier message: 28/03/2004, 01h28

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