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

PHP & Base de données Discussion :

Problème avec le single quote [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 42
    Points : 39
    Points
    39
    Par défaut Problème avec le single quote
    Bonjour tout le monde,

    Je viens de trouver un autre problème que j'avais pas localement.

    Les singles quotes sont convertis.

    Si je mets c'est, je vois c'/est. et c'est pas un problème au niveau de la base de donnée, c'est bien le post qui me l'envoie différement.


    Voici le post en question, j'ai le même problème partout.


    $mail_msg = (htmlspecialchars ($_POST['mail_msg'], ENT_QUOTES));
    Merci de votre aide

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 42
    Points : 39
    Points
    39
    Par défaut
    Bon désolé, j'ai trouvé ma réponse stripslashes


    $mail_msg = stripslashes(htmlspecialchars ($_POST['mail_msg'], ENT_QUOTES));


  3. #3
    Membre régulier Avatar de TiEuAM
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 75
    Points : 101
    Points
    101
    Par défaut
    Oui, c'est que les magic quotes sont "On" dans ta config de php.
    Ca donne normalement "c\'est" et non "c'/est".

    Il te suffit de faire un stripslashes sur ta variable pour lui enlever une série d'échappement.

    Ou de désactiver les magic quotes et gérer toi meme chaque variable. (attention à la sécurité de ton appli)

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 42
    Points : 39
    Points
    39
    Par défaut
    Citation Envoyé par TiEuAM Voir le message
    Oui, c'est que les magic quotes sont "On" dans ta config de php.
    Ca donne normalement "c\'est" et non "c'/est".

    Il te suffit de faire un stripslashes sur ta variable pour lui enlever une série d'échappement.

    Ou de désactiver les magic quotes et gérer toi meme chaque variable. (attention à la sécurité de ton appli)
    Intéressant , je suis entrain de tout reviser mes champs textes, mais l'essentiel c'est que cela marche

    Merci

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 42
    Points : 39
    Points
    39
    Par défaut
    Finalement cela me cause un autre genre de problème

    Pour l'affichage tout est parfait, par contre dans la base de donnée il y a maintenant #039 pour remplacer le single quote.

    Ma problèmatique est surtout quand je passe ma description à javascript, j'ai un info bulle qui me permet d'afficher une description provenant de la base de donnée, et maintenant je voix #039.

    Pour les visuel voici mon code

    <?php
    $vardescr = (addslashes((substr($d_list['DESCR_WISH_3'],50))));
    $vardescr = str_replace("\r","<br>",$vardescr);
    $vardescr = str_replace("&"," ",$vardescr);
    $vardescr = str_replace("\n","",$vardescr);
    ?>
    <span onmouseover="Tip('<div class=\'infobulleplus\'><?php echo $vardescr;?></div>')" onMouseOut="UnTip()" > <img src="images/loupesmall.gif" alt="+"></span>
    Donc, mes sauts de lignes sont parfait, mais c'est les #039 que je devrais remplacer.

    Merci

  6. #6
    Membre régulier Avatar de TiEuAM
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 75
    Points : 101
    Points
    101
    Par défaut
    Donc, mes sauts de lignes sont parfait, mais c'est les #039 que je devrais remplacer.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $vardescr = str_replace("&"," ",$vardescr);
    Cela provient de cette ligne qui supprime les &, du coup #039; n'est plus & #039; (sans espace et/ou sans les points virgule) et n'est donc plus interpréter par le navigateur.

    Comment se faisse que tu te retrouve avec des & #039; stocker dans ta bdd !?
    Ça devrait simplement être "L\'EXEMPLE".

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

Discussions similaires

  1. Requete paramétrée avec des singles quotes ?
    Par Mirmillon dans le forum Bases de données
    Réponses: 5
    Dernier message: 03/12/2010, 11h34
  2. [Shell] Problème avec le Back-quote (ksh)
    Par bob94700 dans le forum Linux
    Réponses: 3
    Dernier message: 27/01/2008, 12h45
  3. Sudo problème avec les simples quotes
    Par Tronche dans le forum Shell et commandes GNU
    Réponses: 5
    Dernier message: 23/03/2007, 12h02
  4. [MySQL] Problème avec un double quote
    Par wormseric dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 26/01/2007, 14h44
  5. Formulaires : problème avec les slashes et les quotes
    Par GarGamel55 dans le forum Langage
    Réponses: 1
    Dernier message: 12/10/2005, 15h59

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