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 :

Pb configuration / question d'un nul [PHP 5.3]


Sujet :

Langage PHP

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8
    Points : 9
    Points
    9
    Par défaut Pb configuration / question d'un nul
    Bonjour à tous
    Je débute en php (mais pas en dev), pardonnez donc mes lacunes.
    Je dois avoir un pb de configuration (wampserver_2) enfin je vois pas autre chose.

    Quand j'utilise le truc basic de basic :

    echo "Cet echo() se\nrépartit sur plusieurs lignes. Il affiche aussi les\nnouvelles lignes";

    mis dans un .php sur la machine serveur
    ouvert par ie8

    ben celà ne le fait pas !!! Tout est affiché sur une ligne...
    je suis obligé de remplacer les \n par les <br /> (et la c'est normal que ca marche) mais ca ne me plait pas du tout...

    pourquoi ?

    merci.

  2. #2
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    Hello

    C'est parce que par défaut Apache est configuré pour envoyer du HTML au navigateur donc produire la ligne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Une ligne de texte
    Est interprété comme cela par le navigateur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <html>
    <head></head>
    <body>
    Une ligne de texte
    </body>
    </html>
    Pour changer ce comportement, tu peux spécifier quels headers HTTP utiliser, si tu veux envoyer du texte, utilise:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    header("Content-Type: text/plain");
    echo "Une ligne\nSur plusieurs lignes";
    Note également que pour que le caractère \n soit interprété, il faut que ta chaine soit définie avec des double-quotes et pas des simple.

    Note également que tu peux envoyer n'importe quel type de header:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    header('Content-Type: application/csv');
    header('Content-Type: application/json');
    header('Content-Type: image/jpeg');
    etc.
    La liste non exhaustive est dispo sur le site de PHP :http://php.net/manual/en/function.header.php

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8
    Points : 9
    Points
    9
    Par défaut ...
    merci, mais

    le Code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    header("Content-Type: text/plain");
    echo "Une ligne\nSur plusieurs lignes";
    ne marche pas chez moi...

    Il doit y avoir autre chose, quand je regarde la source dans le navigateur il n'y a aucune balise html, j'ai deux lignes, qui sont fusionné par ie.

    Je crois que je vais potasser un peu tout ca...

    Merci

  4. #4
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    Visiblement IE n'est même pas capable de comprendre text/plain et invite à télécharger le contenu produit

    Enfin, Firefox lui sait le faire et affiche les résultat attendus.

    Je te remets le bout de code au cazou:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <?php
    header("Content-Type: text/plain");
    echo "Une ligne\nSur plusieurs lignes";

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8
    Points : 9
    Points
    9
    Par défaut ...
    tout à fait thierry...

    Pourtant des exemples de codes php fonctionnes...comme dit, je vais creuser afin de n'etre lié a aucun nagivateur...

    Merci

  6. #6
    Membre à l'essai
    Inscrit en
    Octobre 2009
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 17
    Points : 18
    Points
    18
    Par défaut
    Tu peux éventuellement utiliser la fonction nl2br, qui remplace tes \n par des <br />. Mais cela ne reste qu'une solution partielle.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo nl2br("Une ligne\nSur plusieurs lignes");

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8
    Points : 9
    Points
    9
    Par défaut
    Citation Envoyé par Myst. Voir le message
    Tu peux éventuellement utiliser la fonction nl2br, qui remplace tes \n par des <br />. Mais cela ne reste qu'une solution partielle.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo nl2br("Une ligne\nSur plusieurs lignes");
    Et donc a creer ma fonction EchoBr, pourquoi pas, mais je crois que je vais tout reprendre à la base, il y a un truc qui m'a echappé.

    Merci à Vous

  8. #8
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8
    Points : 9
    Points
    9
    Par défaut
    Citation Envoyé par philou06000 Voir le message
    Et donc a creer ma fonction EchoBr, pourquoi pas, mais je crois que je vais tout reprendre à la base, il y a un truc qui m'a echappé.

    Merci à Vous
    Bon...j'ai bien tout relu, et...le problème vient...des exemples, tout simplement.

    le \n n'est pas du code html tout simplement, ie n'en a donc cure.

    De plus comme chez bilou, dans ses exemples de codes, ou les variables ne sont jamais libérées, ben dans certains exemples php c'est pareil !!! Pour démarrer c'est génial, on s'appuie sur des fondations fausses.

    Donc...PB...Résolu...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Configuration] Question local Internet envoi Mail
    Par Little_flower dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 16/10/2007, 10h09
  2. [Configuration] Question sur Include (ou Require)
    Par charlands dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 06/10/2007, 14h10
  3. [Configuration] question php_value allow_call_time_pass_reference
    Par easyjava dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 29/03/2007, 15h22
  4. [Configuration] question par rapport aux chemins
    Par Death83 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 16
    Dernier message: 11/12/2006, 10h24
  5. [Configuration] question sur programmation d'untranet
    Par zana74 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 4
    Dernier message: 20/08/2006, 12h59

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