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 :

nl2br et le format HTML


Sujet :

Langage PHP

  1. #1
    Membre actif
    Profil pro
    Developpeur web et Access VBA
    Inscrit en
    Janvier 2003
    Messages
    457
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Developpeur web et Access VBA
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2003
    Messages : 457
    Points : 203
    Points
    203
    Par défaut nl2br et le format HTML
    Bonjour,

    J'utilise dans une page la fonction nl2br($data['variable']) pour afficher les données avec un saut de ligne comme le souhaite celui qui à saisie les données.
    Mais ma page est au format HTML et nl2br met en place un <br /> en fin de ligne qui n'est pas compatible avec HTML mais XHTML.
    Comment faire pour avoir <br> ?

    Merci

  2. #2
    Membre habitué Avatar de Rizzen
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    115
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 115
    Points : 157
    Points
    157
    Par défaut
    Tu ne peux pas passer ta page en xhtml ?

  3. #3
    Membre expert
    Avatar de Eusebe
    Inscrit en
    Mars 2006
    Messages
    1 992
    Détails du profil
    Informations personnelles :
    Âge : 46

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 992
    Points : 3 344
    Points
    3 344
    Par défaut
    Citation Envoyé par Rizzen Voir le message
    Tu ne peux pas passer ta page en xhtml ?
    C'est tout à fait 'compatible' HTML... Quel est le problème ?

  4. #4
    Membre habitué Avatar de Rizzen
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    115
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 115
    Points : 157
    Points
    157
    Par défaut
    Citation Envoyé par Eusebe Voir le message
    C'est tout à fait 'compatible' HTML... Quel est le problème ?
    J'avais un doute merci



    Pour le problème vérifie que les <> ne sont pas traduit en code html dans le source de la page généré

  5. #5
    Membre actif
    Profil pro
    Developpeur web et Access VBA
    Inscrit en
    Janvier 2003
    Messages
    457
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Developpeur web et Access VBA
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2003
    Messages : 457
    Points : 203
    Points
    203
    Par défaut
    Citation Envoyé par Eusebe
    C'est tout à fait 'compatible' HTML... Quel est le problème ?
    Non, puisque le fait d'avoir <br /> n'est pas validé au w3c, car les balises finissants par /> ne sont accpetées que pour le XHTML.

    Citation Envoyé par Rizzen
    Tu ne peux pas passer ta page en xhtml ?
    Pourquoi pas, mais comment faire.
    Sinon j'ai essayé et j'ai vu que j'avais plein de problèmes avec le menu en javascript de ma page et beaucoup de décalages...

  6. #6
    Membre émérite Avatar de darkstar123456
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    1 896
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 1 896
    Points : 2 838
    Points
    2 838
    Par défaut
    Citation Envoyé par Décibel Voir le message
    Non, puisque le fait d'avoir <br /> n'est pas validé au w3c, car les balises finissants par /> ne sont accpetées que pour le XHTML.


    Pourquoi pas, mais comment faire.
    Sinon j'ai essayé et j'ai vu que j'avais plein de problèmes avec le menu en javascript de ma page et beaucoup de décalages...
    Qu'entends-tu comme différence entre HTML et XHTML ? Oo

    <br /> est tout à fait valide dans un XHTML 1.0 Transitionnal (alors que <br> ne l'est pas pour le XHTML 1.0 Strict !)

    Quelle est ta doctype qu'on s'y retrouve un peu mieux, stp ?

    Perso, je pense que si tu passes tous tes fichiers en 1.0 Transitionnal, ça devrait être bon...

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

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 887
    Points : 16 325
    Points
    16 325
    Par défaut
    Tu as deux solutions :

    - Passer en PHP < 4.0.5.
    - Passer ton code en XHTML.

    Si tu as des problèmes pour la conversion HTML > XHTML, tu peux toujours poser tes questions dans ce forum :
    http://www.developpez.net/forums/f39...l-dhtml-xhtml/

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

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 887
    Points : 16 325
    Points
    16 325
    Par défaut
    Citation Envoyé par darkstar123456 Voir le message
    Perso, je pense que si tu passes tous tes fichiers en 1.0 Transitionnal, ça devrait être bon...
    Le XHTML, qu'il soit Transitional ou Strict se base sur une structure de document orientée XML, donc toutes les balises simples doivent être fermées par />, ce qui n'est pas le cas d'un document en HTML.

  9. #9
    Membre émérite Avatar de darkstar123456
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    1 896
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 1 896
    Points : 2 838
    Points
    2 838
    Par défaut
    Citation Envoyé par Bisûnûrs Voir le message
    Le XHTML, qu'il soit Transitional ou Strict se base sur une structure de document orientée XML, donc toutes les balises simples doivent être fermées par />, ce qui n'est pas le cas d'un document en HTML.
    Ouais effectivement... j'me suis trompé... ça fait trop longtemps que j'utilise pu que le Strict. Merci de me l'avoir fait remarqué

  10. #10
    Membre expert
    Avatar de Eusebe
    Inscrit en
    Mars 2006
    Messages
    1 992
    Détails du profil
    Informations personnelles :
    Âge : 46

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 992
    Points : 3 344
    Points
    3 344
    Par défaut
    Citation Envoyé par Décibel Voir le message
    Non, puisque le fait d'avoir <br /> n'est pas validé au w3c, car les balises finissants par /> ne sont accpetées que pour le XHTML.
    J'insiste, le code suivant passe, avec un avertissement : ce n'est pas recommandé (mais je ne pense pas qu'il y ait beaucoup de navigateurs qui comprennent de travers cette balise)...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    <html>
    <head>
    <title>test</title>
    </head>
    <body>
    <p>
    <br/>
    </p>
    </body>
    </html>
    Citation Envoyé par Décibel Voir le message
    Pourquoi pas, mais comment faire.
    Sinon j'ai essayé et j'ai vu que j'avais plein de problèmes avec le menu en javascript de ma page et beaucoup de décalages...
    En utisant les règles du w3c pour le XHTML (transitionnel de préférence, si tu est en HTML). Pour voir les différences, il te suffit de changer le doctype de ta page et le repasser par le validateur. Pour le code précédent par exemple, les modifications suivantes suffisent (attribut xmlns de la balise HTML) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
       "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    <head>
    <title>test</title>
    </head>
    <body>
    <p>
    <br/>
    </p>
    </body>
    </html>
    Si tu veux tout de même remplacer les retours à la ligne par des <br>, il suffit d'utiliser str_replace au lieu de nl2br.

Discussions similaires

  1. couleur : passage du format html à r, g, b
    Par vasilov dans le forum Langage
    Réponses: 2
    Dernier message: 16/12/2005, 17h34
  2. Exportation d'un état ACCESS au format HTML
    Par lafron dans le forum Access
    Réponses: 9
    Dernier message: 28/09/2005, 17h30
  3. Écrire un e-mail au format HTML
    Par Benoit30 dans le forum Composants VCL
    Réponses: 4
    Dernier message: 02/08/2005, 12h40
  4. [HTML]Email au format html
    Par willowII dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 12/03/2005, 21h17
  5. Envoi de mail au format html
    Par Mephyston dans le forum C++Builder
    Réponses: 2
    Dernier message: 22/01/2004, 12h29

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