Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1457 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  problème avec les caractères spéciaux quote/addslashes insertion MySQL

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

problème avec les caractères spéciaux quote/addslashes insertion MySQL

n°2221360
Benh_31
Posté le 03-03-2014 à 17:13:24  profilanswer
 

Bonjour à tous !  
 
alors voila mon problème :(
 
j'essaie de faire remplir à un utilisateur un commentaire libre sur une page web afin de l'insérer dans une base de données MySQL. jusque la tout va bien, mais je n'arrive pas à prendre en compte le cas où l'utilisateur voudrait saisir des caractères spéciaux, par exemple l'apostrophe :(
j'ai essayé quote de PDO et addslashes mais ça ne marche pas :(
 
pour le moment, avec ce bout de code :

Code :
  1. if(empty($commentaire))
  2. {
  3.    $commentaire='NULL';
  4. }
  5. else
  6. {
  7.    $commentaire=self::$connexion->quote($commentaire);
  8. }


 
lorsque que je tape la chaine :
 
-->l'apostrophe<--
 
j'obtiens :  
 
'l\'apostrophe'
 
Avez vous une solution a mon problème ? j'ai tout essayé.. combiner addslashes avec quote, faire des str_replace des slashs mais rien à faire :(
 
 
merci d'avance..

mood
Publicité
Posté le 03-03-2014 à 17:13:24  profilanswer
 

n°2221423
rufo
Pas me confondre avec Lycos!
Posté le 04-03-2014 à 11:10:31  profilanswer
 

Je suis pas sûr de comprendre : c'est normal d'avoir "l\'apostrophe" écrit en base puisque le ' est le caractère de délimitation d'une chaîne en SQL.
 
Pour réafficher ce qui vient de la BD, faut faire un stripslashes() sur la chaîne extraite.
 
A noter que si le php.ini est configuré avec les magic_quotes à ON, ça rajoute déjà des "\" devant les apostrophes...


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2221439
Benh_31
Posté le 04-03-2014 à 13:41:55  profilanswer
 

rufo a écrit :

Je suis pas sûr de comprendre : c'est normal d'avoir "l\'apostrophe" écrit en base puisque le ' est le caractère de délimitation d'une chaîne en SQL.
 
Pour réafficher ce qui vient de la BD, faut faire un stripslashes() sur la chaîne extraite.
 
A noter que si le php.ini est configuré avec les magic_quotes à ON, ça rajoute déjà des "\" devant les apostrophes...


 
 
Intéressant !!!! je m'en vais faire des tests tout de suite :) je pense que mon problème vient de mon oublie de stripslashes :) merci beaucoup :)
 
Edit : ça marche niquel :) tu m'enlèves une épine du pied la ! merci encore !


Message édité par Benh_31 le 04-03-2014 à 13:53:53

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  problème avec les caractères spéciaux quote/addslashes insertion MySQL

 

Sujets relatifs
[BASH] Probleme DifferenceTrès étrange problème de sheets.select
[LINUX/SGBD] Problème connexion base oracle avec un user linux dbaProblème ScreenShot
[Batch] Modification d'une chaîne de caractères dans un txt zippéintégration xml dans mysql (en php ?)
probleme CSS avec ie8[résolut]problème avec char** new[] et delete[]
flux octets et caractères[VB.NET] Problème affichage collections dans listbox [VB.NET]
Plus de sujets relatifs à : problème avec les caractères spéciaux quote/addslashes insertion MySQL


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR