Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Bonjour,
j'ai un problème avec mes Zend_form, si je met des accents dans les labels, ceux-ci ne s'affichent pas.
exemple:
$name = new Zend_Form_Element_Text('name'); $name->setLabel('Entrée')
de même avec le Zend_Form_Element_Submit.
une idée?
Merci
Dernière modification par pozowebs (23-07-2008 15:20:44)
Hors ligne
hmm. je n'ai pas ce problème.
Vérifie tes encodages (fichiers, entete HTTP, entete HTML, ...)
Hors ligne
bonne piste... J'ai ceci dans mon bootstrap:
$view = new Zend_View; $view->setEncoding('utf-8'); $viewRenderer = new Zend_Controller_Action_Helper_ViewRenderer($view); Zend_Controller_Action_HelperBroker::addHelper($viewRenderer);
Si je vire tout ça, je n'ai plus de problème avec mon formulaire. pourquoi?
Hors ligne
Tes fichiers sont encodés en UTf-8 ?
Hors ligne
En effet mes fichiers n'étaient pas en utf-8... Donc je viens de faire la modif. Ils sont maintenant en utf-8.
Du coup j-ai remis le $view->setEncoding('utf-8'); dans mon bootstrap.
Par contre maintenant pour le mot "Entrée" j'obtient "Entrée". Donc c'est mieux mais ce n'est pas encore ça... Enfin au moins maintenant le probleme est clairement identifie comme etant un probleme d'encodage, donc j'avance...
Dernière modification par pozowebs (23-07-2008 03:34:33)
Hors ligne
Hello,
Il te reste à avertir le navigateur que tu es en UTF8.
Avec un meta :
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
A+
Hors ligne
C'est pas dans les header HTML mais dans les headers HTTP qu'il faut cela
Dans le Zend Framework, il faut donc passé par l'objet response :
$response->setHeader('Content-Type', 'text/html; charset=UTF-8', true);
Hors ligne
Yes! J'ai ajouté ceci dans le bootstrap:
Avant le dispatch():
$frontController->returnResponse(true);
puis après le dispatch():
$response->setHeader('Content-Type', 'text/html; charset=UTF-8', true); $response->sendResponse();
Merci nORKy!
Hors ligne
Pages: 1