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 :

Interprétation des espaces ET des apostrophes


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Inscrit en
    Mai 2007
    Messages
    177
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 177
    Points : 65
    Points
    65
    Par défaut Interprétation des espaces ET des apostrophes
    Bonjour à tous,

    Voilà j'ai un textarea dans un formulaire.
    Je le valide : ça fonctionne
    Je l'affiche en "text" ça fonctionne.
    Mais quand je réaffiche cette variable dans un textarea pour modification j'arrive soit à interpréter les espaces, soit les apostrophes mais pas les deux.
    Quand je le remplis avec par exemple :
    problème d'apostrophe
    j'ai deux solutions :

    SOIT je passe la variable :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    echo"	<input type='hidden' name=Description value=$Description>
    ";
    Donc sans être encadré par des '
    Et du coup il m'écrit dans le textarea : pb
    Du coup il n'interprête pas l'espace

    SOIT je le met entre ' et à ce moment là il m'écrit pb d

    Aidez moi svp, je ne comprends plus !!

  2. #2
    Membre expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Points : 3 212
    Points
    3 212
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    echo"	<input type='hidden' name=Description value=\"$Description\">
    ";
    Je pense qu'un htmlspecialchars() serait peut-être plus propre car si tu as des double-quotes le probleme se reposera.

  3. #3
    Membre du Club
    Inscrit en
    Mai 2007
    Messages
    177
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 177
    Points : 65
    Points
    65
    Par défaut
    Ok merci je viens de l'appliquer grâce à la réponse d'une autre personne qui avait la même solution que toi, et ça fonctionne.
    Maintenant mon problème c'est que quand je reviens à la ligne, dans mon textarea il interprète en affichant des <br> et c'est pas très propre.

  4. #4
    Membre expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Points : 3 212
    Points
    3 212
    Par défaut
    as-tu bien utilisé htmlspecialchars() ? parce que j'ai vu que dans l'autre post on te conseille htmlentities() et celle-ci convertit effectivement TOUS les caractères en entités html contrairement a htmlspecialchars().

  5. #5
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    83
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 83
    Points : 95
    Points
    95
    Par défaut
    Ca change quelque chose d'utiliser htmlentities ou htmlspecialchars pour afficher dans un input ? htmlentities m'a jamais posé de problème

  6. #6
    Membre expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Points : 3 212
    Points
    3 212
    Par défaut
    dans un input peut etre pas, mais le message parle d'un textarea (meme si c'est un input dans son exemple), et comme elle a un probleme avec les <br> je suppose que le htmlentities pose probleme.

  7. #7
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    83
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 83
    Points : 95
    Points
    95
    Par défaut
    Oui justement, c'est pas très clair si il s'agit d'un input ou d'un textarea. Dans le doute vaut mieux choisir htmlspecialchars

  8. #8
    Membre du Club
    Inscrit en
    Mai 2007
    Messages
    177
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 177
    Points : 65
    Points
    65
    Par défaut
    C'est bon j'ai remplacé par des htmlspecialchars, mais quelle est la différence ?

  9. #9
    Membre expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Points : 3 212
    Points
    3 212
    Par défaut
    Il suffit de lire les documentations respectives des deux fonctions :
    htmlspecialchars()
    htmlentities()

    La première ne remplace qu'une toute petite partie des caractères (les quotes, les doubles quotes, le &, ainsi que < et >) tandis que la seconde remplace tous les caractères spéciaux en entités html.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 27/10/2009, 10h36
  2. Affichage des espaces et des tabulations.
    Par Shin_RockmanX dans le forum Visual Studio
    Réponses: 2
    Dernier message: 20/10/2009, 16h25
  3. Afficher des images avec des espaces dans le nom
    Par Space Cowboy dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 15/03/2007, 07h18
  4. Réponses: 3
    Dernier message: 23/01/2007, 08h14
  5. Renommer des fichiers contenant des espaces
    Par MatRem dans le forum Linux
    Réponses: 6
    Dernier message: 28/04/2006, 08h21

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