Bonjour à tous,
et oui, oui, caractères accentués, 1 de plus.
J'étais en ZF 1.9.3.
Mon site fonctionnait parfaitement.
MySQL en UTF-8, champs itou.
Fichiers encodés en UTF-8 (sans BOM)
Vues html en UTF-8 via mon Bootstrap
L'affichage de mes champs dans les pages html était impeccable via de simples
Code : Sélectionner tout - Visualiser dans une fenêtre à part $view->headMeta()->appendHttpEquiv('Content-Type', 'text/html;charset=UTF-8');
Mon application.ini contenait :
Code : Sélectionner tout - Visualiser dans une fenêtre à part <?php echo $this->escape($bibliotheque->obj_libelle01);?>
Les Zend_Forms marchaient impecc, et les valeurs saisies étaient enregistrées correctement accentués.
Code : Sélectionner tout - Visualiser dans une fenêtre à part resources.db.params.driver_options.1002 = "SET NAMES utf8;"
Bref, données en base correctes, données affichées correctes.
Je bascule en ZF 1.10
Les champs contenant des caractères accentués ne s'affichent plus du tout via
Les Zend_Form n'affichent plus non plus les valeurs de ces champs,
Code : Sélectionner tout - Visualiser dans une fenêtre à part <?php echo $this->escape($bibliotheque->obj_libelle01);?>
et lorsque je saisis de nouvelle données, celles-ci s'affichent correctement mais sont enregistrées en ISO-8859-1 dans la base.
Après moultes galères, j'apprends qu'à partir de ZF 1.9.7, la méthode escape de Zend_View_Abstract::escape() a changé d'encodage par défaut = est passée de ISO-8859-1 à UTF-8.
OK, me dis je, petit couillon, remets ISO-8859-1 dans escape.
Mais rien n'y fait, tout fout le camp.
Où se trouve mon sauveur ?????
Partager