Bonjour,
J'ai du convertir tous mon site en UTF-8 (traduction polonaise prévu pour bientôt).
Avant, certains fichiers étaient en ISO-8859-1, d'autres en UTF-8 et pour la base de données, c'était pareil : certaines tables en UTF-8, d'autres en latin1.
Mais ça c'était avant...
Via un script, j'ai passé tous mes fichiers en UTF-8. De même, pour ma base de données.
Dans plusieurs page php, j'utilise des fonctions relatives au chaîne de caractère comme strtoupper,... et ces fonctions ne prennent pas en charge l'UTF-8.
Dans mon php.ini, j'ai donc activé les deux directives suivantes qui évite le remplacement par leurs équivalent mb_ (il y en a trop) :
Le problème que j'ai aujourd'hui, c'est que le site génère des PDF grâce à la librairie FPDF.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 mbstring.internal_encoding = UTF-8 mbstring.func_overload = 7
Or, je n'arrive pas à faire fonctionner FPDF ou tFPDF sans désactiver les deux directives dans mon php.ini.
Je vous donne les cas des figure que j'ai testé :
Pour tFPDF avec mbstring.func_overload activé et mbstring.internal_encoding activé ou non, j'ai l'erreur suivante :Pour FPDF avec mbstring.func_overload activé et mbstring.internal_encoding desactivé, ça fonctionne mais les caractères accentués ressemble à ¨A et les strtoupper de mon site ne fonctionne pas si j'ai des caractères accentués.
Code : Sélectionner tout - Visualiser dans une fenêtre à part FPDF error : mbstring overloading must be disabled.
Pour FPDF avec mbstring.func_overload activé et mbstring.internal_encoding activé (ce que je voudrais dans l'idéal), le fichier PDF est illisible : fichier corrompu, et aucune erreur qui puisse m'éclairer.
J'ai également essayé de desactiver les directives avec un ini_set avant de générer mon PDF, mais ça ne fonctionne pas non plus.
Quelqu'un aurait-il une idée ?
Partager