Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 14-04-2007 00:10:22

toutoune60
Membre
Date d'inscription: 13-04-2007
Messages: 21

[Résolu][Zend_View][0.9.2] Problème d'encodage dans un Helper?

Bonjour à tous,
avec le code suivant :

Code:

$vue->formText('nom',$this->escape($this->user->nom), array("maxlength"=>50))

si mon attribut 'nom' se termine par un caractère accentué, j'ai un '?' qui vient s'ajouter à la fin...
vous savez comment je peux résoudre ce problème?

Dernière modification par toutoune60 (08-06-2007 17:36:39)

Hors ligne

 

#2 14-04-2007 10:07:00

okworld
Nouveau membre
Date d'inscription: 28-03-2007
Messages: 6

Re: [Résolu][Zend_View][0.9.2] Problème d'encodage dans un Helper?

quel est l'encoding que tu utilises ? si c du utf-8
alors faut le preciser ds le view ($view->setEncoding('utf-8')wink, la classe utilise par defaut "ISO-8859-1" qui est utilise dans htmlentities

Hors ligne

 

#3 14-04-2007 10:10:59

okworld
Nouveau membre
Date d'inscription: 28-03-2007
Messages: 6

Re: [Résolu][Zend_View][0.9.2] Problème d'encodage dans un Helper?

je viens de m'apercevoir qu'il n'est pas necessaire d'utiliser $this->escape dans formText, les valeurs sont encodes en dur en utf8 !!
va falloir signaler ca aux devs du ZF !

Hors ligne

 

#4 14-04-2007 14:39:07

toutoune60
Membre
Date d'inscription: 13-04-2007
Messages: 21

Re: [Résolu][Zend_View][0.9.2] Problème d'encodage dans un Helper?

Ce sont des données qui viennent d'une BD. Sur quelle encodage dois-je paramétrer mes vues? Celui de la BD ou celui des fichiers eux-mêmes?

Hors ligne

 

#5 15-04-2007 00:34:10

Yogui
Nouveau membre
Lieu: Barcelone
Date d'inscription: 15-04-2007
Messages: 4
Site web

Re: [Résolu][Zend_View][0.9.2] Problème d'encodage dans un Helper?

Salut

J'aurais plutôt dit :

Code:

$this->view->setEscape('utf8_encode');

Hors ligne

 

#6 16-04-2007 08:59:01

Isilgawen
Membre
Lieu: Limoges
Date d'inscription: 23-03-2007
Messages: 106

Re: [Résolu][Zend_View][0.9.2] Problème d'encodage dans un Helper?

toutoune60 passe tout en utf8 : Bdd, charset, encoding comme ca tu es tranquille.

Hors ligne

 

#7 16-04-2007 10:53:35

toutoune60
Membre
Date d'inscription: 13-04-2007
Messages: 21

Re: [Résolu][Zend_View][0.9.2] Problème d'encodage dans un Helper?

Je ne comprend pas, j'ai toujours le même problème!
Dans ma vue, je fais :

Code:

echo $this->user->nom;
echo $this->escape($this->user->nom);
echo $this->formText('nom',$this->escape($this->user->nom));
echo $this->formText('nom',$this->user->nom);

Seul le premier echo est correct avec un caractère accentué à la fin!
Tous les autres me rajouttent un '?'!

Même en essayant vos solutions précédentes

Dernière modification par toutoune60 (16-04-2007 10:54:22)

Hors ligne

 

#8 16-04-2007 10:58:57

toutoune60
Membre
Date d'inscription: 13-04-2007
Messages: 21

Re: [Résolu][Zend_View][0.9.2] Problème d'encodage dans un Helper?

Petite rectification, si j'enlève le

Code:

$view->setEncoding('utf-8');

Alors les 2 premiers echo sont bons!
Mais toujours pas dans mes champs sad

Hors ligne

 

#9 17-04-2007 18:38:19

toutoune60
Membre
Date d'inscription: 13-04-2007
Messages: 21

Re: [Résolu][Zend_View][0.9.2] Problème d'encodage dans un Helper?

Personne n'a une idée?? Ca m'embête pas mal ce problème!

Hors ligne

 

#10 18-04-2007 09:32:40

philippe
Administrateur
Lieu: Grenoble
Date d'inscription: 01-03-2007
Messages: 1624

Re: [Résolu][Zend_View][0.9.2] Problème d'encodage dans un Helper?

Bonjour,
Pour que tout marche bien avec les charset, il faut savoir pour chaque élément dans quel charset tout fonctionne. Le plus simple est de tout mettre dans le même charset. Voilà une liste de trucs à vérifier qui ne doit pas être complète, mais c'est un début de piste (je suppose que tout passe en UTF8) :
* ta connexion avec la bdd est en UTF-8 : cf http://www.z-f.fr/forum/viewtopic.php?id=81
* tes tables en BDD sont en UTF-8
* tes fichiers contenant les vues ou des messages à renvoyer à l'utilisateur sont en UTF-8 (concrètement, je te conseille alors de mettre tous tes fichiers en UTF-8)
* tes pages HTML doivent se déclarer en UTF-8 :

Code:

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

dans le header
* si t'es en xhtml, il faut déclarer le xml en UTF-8

Code:

<?xml version="1.0" encoding="UTF-8" ?>

* le header de ta réponse HTTP doit déclarer la page en UTF-8. Pour faire ça, 2 solutions :
** en PHP

Code:

header('Content-Type: text/plain; charset="UTF-8"');

** dans la conf apache, ajouter un AddDefaultCharset UTF-8 dans le virtualHost
* si tu utilises des vues ZF : $view->setEncoding('utf-8');

Si ça ne marche tjrs pas 2 solutions :
* tu pleures
* tu cherches une autre explication...

Bon si il y a des cadors de UTF-8 ici, n'hésitez pas à ajouter les points que j'ai oublié...

Il y a eu une grosse discussion sur le sujet à l'adresse http://www.z-f.fr/forum/viewtopic.php?id=72


twitter : @plv ; kitpages.fr : Création de sites internet à Grenoble et Paris

Hors ligne

 

#11 08-06-2007 17:36:11

toutoune60
Membre
Date d'inscription: 13-04-2007
Messages: 21

Re: [Résolu][Zend_View][0.9.2] Problème d'encodage dans un Helper?

Bonjour...
Avec pas mal de retard, un grand merci!
La solution qui a été fut de rajouter le bon header() en PHP sur l'ensemble de mes pages wink
Merci!

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages