Php probleme d'apostrophe dans formulaire

jabu1906 Messages postés 134 Date d'inscription   Statut Membre Dernière intervention   -  
 Amarazak -
Bonjour,

je suis entrin de dévellopper un site internet en php. J'ai fait une partie "administration" avec des formulaires pour remplir la base de donnée + facilement.

Pour aller plus vite, je fais des ciper/coller dans un champ " description"

Et la, j'ai probleme d'apostrophe apparement. Quand le texte en contient une, la requete ne fonctionne pas... Par contre si y'en a pas, ca marche parfaitement.

J'ai remarqué également que si je fais le copier/coller directement dans phpmyadmin, ca passe.

Donc, est-ce qu'il y a un moyen d'eviter de repasser derriere tous les apostrophes pour mettre un \ ??

Please help !!!!!
Configuration: Windows XP
Internet Explorer 7.0

2 réponses

  1. drizzt_do_urden
     
    Salut,
    y a bien un solution, il faut utiliser la fonction php mysql_espace_string http://fr2.php.net/mysql_escape_string.

    ++
    www.scambia-workpace.com
    0
  2. Dj Nam Messages postés 339 Statut Membre 41
     
    Bonjour,
    Le fait que des appostrophes causent des ererur est du au fait que tu ne convertisse pas ton texte en texte brut. Il le considère alors comme du code.
    Pour eviter ce problème utilise la fonction
    addslash ou stripslash
    http://fr3.php.net/manual/fr/function.addslashes.php

    il y a aussi htmlentities
    http://fr3.php.net/manual/fr/function.htmlentities.php

    Je te laisse lire ces quelques pages et en fonctionde cela, faire le choix qui te semble le plus judicieux.
    Tu trouvera aussi un renseignement à ce sujet ici :
    https://openclassrooms.com/fr/courses#ss_part_1
    qui utilise la fonction
    htmlspecialchars

    Bref .. de nombreuses fonctions pour un résultat similaire. Aprse il en va de ta convenance.
    Bon courage
    0
    1. cinatit
       
      Bonjour j'ai le meme probleme d'apostrophe que la plupart du monde. J'ai un formulaire avec un champs ['Nom'].
      Lorsque que j'écrit un apostrophe dans le formulaire il me donne une erreur. Jusque la rien de nouveau. Ma base est en ODBC. Je ne sais pas comment ecrire la fonction pour que le nom garde l'apostrophe dans ma base de donnée. Je connais addslashes et stripslashes et htmlentities sauf que je ne sais pas comment les utiliser pour garder mon apostrophe. J'ai essayer d'entrer directement les maniere différentes directement dans mon formulaire:

      J'aime
      J\'aime

      Toujours la meme chose des erreur.
      0
      1. Amarazak > cinatit
         
        Bonjour,

        Pour ma part dans ces cas là j'utilise :
        html_entity_decode(ereg_replace("'","′",monsql))


        Bon courage à tous :)
        0