Bonjour à tous,
J'ai deux problème lors de la création de mon site tout premièrement un problème du côter de htmlentities(), puis ensuite avec substr()...
Avant d'envoyer les données dans les base de donnée je les passes dans htmlentities() comme ceci :
Ensuite mon premier problème est lors de la lecture des chaînes je ne comprends pas pourquoi je n'ais pas besoin de html_entities_decode() pour afficher les chaines qui proviennent de la base de données avec des caractère spéciaux, tous ce fais automatiquement est-ce normal ?
Exemple : un chaine stocké "â en effet" dans la base de donnée, s'affiche "à en effet" sans utiliser aucune fonction de décodage...
Ensuite mon deuxième problème, c'est que lorsque j'utilise substr() pour découper une chaîne qui contient un caractère spéciaux, si par malheur la découpe s'ârrete au milleur d'un caractère spéciaux alors celui si est pas transformé en premier, mais le caractère HTML est donc coupé.
Exemple :
J'ai deux problème lors de la création de mon site tout premièrement un problème du côter de htmlentities(), puis ensuite avec substr()...
Avant d'envoyer les données dans les base de donnée je les passes dans htmlentities() comme ceci :
$chaine = htmlentities($chaine, EN_QUOTES, 'UTF-8');
Ensuite mon premier problème est lors de la lecture des chaînes je ne comprends pas pourquoi je n'ais pas besoin de html_entities_decode() pour afficher les chaines qui proviennent de la base de données avec des caractère spéciaux, tous ce fais automatiquement est-ce normal ?
Exemple : un chaine stocké "â en effet" dans la base de donnée, s'affiche "à en effet" sans utiliser aucune fonction de décodage...
Ensuite mon deuxième problème, c'est que lorsque j'utilise substr() pour découper une chaîne qui contient un caractère spéciaux, si par malheur la découpe s'ârrete au milleur d'un caractère spéciaux alors celui si est pas transformé en premier, mais le caractère HTML est donc coupé.
Exemple :
$chaine = "un copyright c'est ©";
$chaine = substr($chaine, 0, 21);
//cela affiche : un copyright c'est &c;
// au lieu de : un copyright c'est ©