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 :

Chaîne non vide qui ne s'affiche pas avec print ou echo


Sujet :

Langage PHP

  1. #1
    En attente de confirmation mail
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2005
    Messages : 77
    Points : 69
    Points
    69
    Par défaut Chaîne non vide qui ne s'affiche pas avec print ou echo
    Bonjour,
    je pense que je vais ma faire traiter car j'ai un problème, et il est possible que ca soit une erreur de ma part.
    J'ai dans une classe ListeContacts la fonction suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    public function toXML()
        {
     
            $this->rewind() ;
            $xml = '<?xml version="1.0" encoding="iso-8859-15" ?>' ;
            $xml .= '<window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" title="Intranet : Contacts">' ;
            while ($this->valid()) {
                $tmp = $this->current() ;
                $xml .= '<groupbox id="i-contacts-groupbox">' ;
                $xml .= '<hbox>' ;
                $xml .= '<image src="" />' ;
                $xml .= '<description flex="1" value="'.$tmp->__get('nom').''.$tmp->__get('prenom').'" />' ;
                $xml .= '</hbox>' ;
                $xml .= '<label value="Téléphone : 0320917969" />' ;
                $xml .= '<label value="Portable : 0609362954" />' ;
                $xml .= '<label value="e-mail : La_merdouille@hotmail.com" />' ;
                $xml .= '</groupbox>' ;
            }
            $xml .= '</window>' ;
            return $xml ;
        }
    Dans l'absolu, elle ne fait que concaténer du texte.
    Dans un autre fichier, j'ai le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $mescontacts = new ListeContacts() ;
        // 
        echo "ok" ;
        $lexml = $mescontacts->toXML() ;
        print("<br/>".strlen($lexml)."<br/>") ;
        print($lexml) ;
        echo "<br />ok" ;
    Ce qui est très bizarre, c'est que cela ne m'afficher rien à part la longueur de la chaine. Il m'affiche correctement mon ok, puis à la ligne 656 (le nb de caractères -> ma chaine n'est donc pas vide), puis à la ligne, RIEN, et encor a la ligne à nouveau ok !
    La j'avoue j'ai fait plein de tests je comprend pas pk il ne m'affiche pas ce texte, et c'est problématique car j'en ai pas mal besoin ...
    Merci

  2. #2
    En attente de confirmation mail
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2005
    Messages : 77
    Points : 69
    Points
    69
    Par défaut
    En fait le problème n'est pas si bête.
    Je pense que c'est un pb d'encodage des caractères :
    lorsque j'ai ce code, ca ne m'affiche rien
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     $xml = '<?xml version="1.0" encoding="iso-8859-1" ?>' ;
    echo $xml;
    loreque j'ai celui ci, ca m'affiche "<>"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     $xml = '<>' ;
    echo $xml;
    et lorsque j'ai ce dernier, ca maffiche "<\?xml version="1.0" encoding="iso-8859-1" \?>"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     $xml = '<\?xml version="1.0" encoding="iso-8859-1" \?>' ;
    echo $xml;
    la page qui affiche ceci est en iso-8859-15 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <meta content="text/html; charset=ISO-8859-15" http-equiv="content-type">
    c'est peut être à ce niveau qu'il y a un pb.
    Merci

  3. #3
    Membre émérite
    Avatar de Nesmontou
    Homme Profil pro
    Architecte logiciel
    Inscrit en
    Septembre 2004
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Architecte logiciel
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2004
    Messages : 1 612
    Points : 2 969
    Points
    2 969
    Par défaut
    Salut, à mon avis si tu regardes le source de ta page, tu devrais voir ton fichier XML. Pour tout voir à l'écran, plutôt que
    fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo htmlentities($lexml);
    (pour plus d'infos sur la fonction htmlentities : http://fr.php.net/manual/fr/function.htmlentities.php)
    Tout devrait alors être affiché. En fait, ça vient du fait qu'il y a des balises dans ta chaîne de caractères, donc elles ne sont pas affichées par le navigateur.

    Bon développement
    Si vous ne pouvez expliquer un concept à un enfant de six ans, c'est que vous ne le comprenez pas complètement. Albert EINSTEIN

    F.A.Q. : Java, PHP, (X)HTML / CSS

    N'oubliez pas de cliquer sur le bouton Résolu en bas de page quand vous avez obtenu une solution à votre problème

  4. #4
    En attente de confirmation mail
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2005
    Messages : 77
    Points : 69
    Points
    69
    Par défaut
    merci

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

Discussions similaires

  1. Tr vide qui ne s'affiche pas dans outlook 2007
    Par goku19 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 24/04/2013, 10h34
  2. Image non embed qui ne s'affiche pas
    Par Peerofloo dans le forum MXML
    Réponses: 0
    Dernier message: 20/05/2009, 15h09
  3. Caractère qui ne s'affiche pas avec IE
    Par Rian83 dans le forum Langage
    Réponses: 12
    Dernier message: 31/03/2009, 20h59
  4. Réponses: 3
    Dernier message: 12/05/2007, 18h24
  5. Infobulle en CSS qui ne s'affiche pas avec Opera
    Par xenos dans le forum Mise en page CSS
    Réponses: 5
    Dernier message: 27/02/2007, 12h03

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