simplequote est une fonction appelée au préalable :
function simplequoteencode( $Chaine )
{
return str_replace("'","’",$Chaine);
}
(le code n'est peut etre pas correct à ce niveau là, mais après plein plein de tests, ça ne marche toujours pas.)
Et du coup dans la base, quoi que je fasse ça enregistre en brut ce que je mets dans la fonction (ici c'est "’") et quand je met une apostrophe le champs se coupe à partir de là.
Qqn peut il m'aider svp ?
Merci
A voir également:
Probleme en registrement caractères spéciaux "quote"
Dans l'enregistrement je n'ai aucnu probleme, je vois bien l'apostrophe qui apparait, c'est à la lecture des champs que ça supprime tout ce qu'il y a apres l'apostrophe.
J'ai essayé avec addslashes et stripslashes mais en vain.
Il n'y a pas d'équivalent au mysql_real_escape_string, et ce pour une bonne raison, ODBC est une interface de connection abstraite, avec de spilotes sous-jacents pour une collection de bases de données différentes, pour lesquels les chaînes d ecaractères ne se traitent pas de manière identique.
Si MySQL natif, au moins jusqu'à sa version 4.1 utilise l'antislash en tant qu ecaractère d'échappement, un MySQL 5.0 ou supérieur lancé en mode SQL-99 ANSI utilisera le doublage des simple quotes en tant qu'échapement... etc.
mysql_real_escape_string permet d erésoudre cette incohérence entre les divers modes de fonctionnement du serveur.