Quick links: Content - sections - sub sections
EN FR
Quick Search Advanced search
 
Page

  [Opened] Problème d'insertion en base lorsqu'une chaine contient une Esperluette (&)

Bonjour les Jelixeur,

je rencontre un problème dans mon système de commentaires.

Lorsque que je post un commentaire contenant le caractère "&", ce dernier est supprimé ainsi que le reste de la chaine. L'enregitrement en DB ce fait, mais tronqué au niveau de l'esperluette.

Avez vous une solution ?

Cordialement

  [Opened] Problème d'insertion en base lorsqu'une chaine contient une Esperluette (&)

Bonsoir,

quel est le moteur de base de données et s'agit il d'un champ (input) classique, d'un textarea classique ou avec barre d'outils ,etc... ?

Cordialement.


Follow me on twitter - HaveFnuBB! - Fork on GitHub : HaveFnuBB // Jelix // Huanui

  [Opened] Problème d'insertion en base lorsqu'une chaine contient une Esperluette (&)

Bonjour,

normalement, il n'y a rien dans jelix qui supprime les esperluettes. Utilises-tu jforms, et si oui, peux-tu nous indiquer le code de la balise jforms qui correspond au champs en question. Utilise-tu un éditeur wysywyg HTML, et si oui, lequel. As-tu vérifié que dans ton contrôleur tu ne faisais pas des traitements sur la valeur de ce champs, et as-tu vérifié que la valeur du champs qui est récupérée dans ton contrôleur est entière, ou n'est pas déjà tronquée ?

  [Opened] Problème d'insertion en base lorsqu'une chaine contient une Esperluette (&)

à y reflechir, je pense que ça vient de ta page html, et je soupconne que les données sont envoyées avec xmlhttprequest, de manière inapropriée. L'url (si c'est en GET) ou le contenu de la requete (si c'est un POST) est mal forgée : les esperluettes dans les valeurs ne sont pas échappées. Et du coup sont pris en compte par le serveur comme étant des séparateurs de paramètres.

  [Opened] Problème d'insertion en base lorsqu'une chaine contient une Esperluette (&)

Bonjour et merci pour vos réponses,

quel est le moteur de base de données et s'agit il d'un champ (input) classique

Le moteur de base de donnée est mysql et j'utilise la classe jDao

Utilises-tu jforms

Non dans le cas présent je n'utilise pas jForms

As-tu vérifié que dans ton contrôleur tu ne faisais pas des traitements sur la valeur

Le seul traitement effectué est à l'affichage avec un htmlentities( $var, ENT_QUOTES, 'UTF-8' );

à y reflechir, je pense que ça vient de ta page html, et je soupconne que les données sont envoyées avec xmlhttprequest, de manière inapropriée. L'url (si c'est en GET) ou le contenu de la requete (si c'est un POST) est mal forgée

Les données sont envoyées au format JSON avec la methode $.ajax() de jQuery 1.7 et son envoyées en POST

Si vous avez d'autres idées je suis preneur, en attendant je vais faire de nouveux tests.

  [Opened] Problème d'insertion en base lorsqu'une chaine contient une Esperluette (&)

Les données sont envoyées au format JSON avec la methode $.ajax() de jQuery 1.7 et son envoyées en POST

donc c'est ton script JS qui n'est pas bon. Il y a certainement une option qu'il faut mettre où que tu as désactivé, pour que les données que tu lui donnes soient encodées correctement avant envoi. Faudrait voir le bout de code qui transforme en json et qui envoit le contenu...

 
Page
  1. [Résolu] jResponseRedirect et url >
  2. [Résolu] Utilisation PHPUnit >
  3. Tableaux postgresql >
  4. Problème d'insertion en base lorsqu'une chaine contient une Esperluette (&) >
  5. 2 Left Join dans un Dao Xml >
  6. [Résolu] 2 Left Join dans un Dao Xml >
  7. Re: Tableaux postgresql >
  8. Problème d'insertion en base lorsqu'une chaine contient une Esperluette (&)