Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 22-04-2008 10:49:05

stf
Membre
Date d'inscription: 03-04-2008
Messages: 156

[Zend_Filter_input] Escape et UTF8

hop,

Je m'en viens de nouveau quérir de nouvelles connaissances ici smile


Voila mon probleme :

Un formulaire tout simple, passés là dedans :

Code:

<?php
$filters = array(
    'login'   => 'StringToLower',
    'passwd' => 'StringToLower'
);
$validators = array(
    '*' => array(Zend_Filter_Input::PRESENCE => 'required'),
);
?>

Le Zend_filter_input là dessus est  réalisé par :

Code:

$e = new Zend_Filter_Input($formt->getfilters(),$formt->getValidators(),$_POST,$formt->getOptions());

Jusque là ca va bien smile

pas longtemps malheuresement :

Lorsque je fait un

Code:

var_dump($e->getEscaped() );

et que je met des accents, ca me donne :

["passwd"]=>  string(42) "ã©ã©ã©"



Donc apparement, le getEscaped ne me renverrais pas de l'UTF8 (fichier/page sont en utf8)

j'ai rajouté cette ligne là , juste en dessous de mon new Zend_filter_input :

Code:

$e->setDefaultEscapeFilter(new Zend_Filter_HtmlEntities(ENT_COMPAT,'utf-8'));

Cependant, avec ca, je ne recois plus rien ^^



Et si j'utilise pas le getEscaped, mais getUnescaped a la place,  j'obtiens un magnifique : ["passwd"]=>  string(6) "���"




En fait , j'ai l'impression que lorsque je traite des données en spécifiant que je veux de l'UTF8, il me les affiche en ISO, et lorsque je ne le spécifie pas, il me les affiche en UTF8 ...... hmm

Moi qui voulais juste les accents tout en protégeant contre les ' et autres caracteres spéciaux sad


C'est grave docteur ? smile

Hors ligne

 

#2 22-04-2008 11:36:40

Mr.MoOx
Administrateur
Lieu: Toulouse
Date d'inscription: 27-03-2007
Messages: 1444
Site web

Re: [Zend_Filter_input] Escape et UTF8

En cherchant par là http://www.z-f.fr/forum/viewtopic.php?id=783 tu trouvera surement une réponse...
Regarde au début de la page 2.

Hors ligne

 

#3 22-04-2008 11:43:49

stf
Membre
Date d'inscription: 03-04-2008
Messages: 156

Re: [Zend_Filter_input] Escape et UTF8

Ouep j'avais lu ce post, mais j'y avais pensé, mon overload est deja a 7 ...


Au pire j'utilise le getUnescaped avec un StringTrim, il me renvoi bien les accents et backslashe les apostrophes, mais bon étrange quand meme.

Dernière modification par stf (22-04-2008 11:49:31)

Hors ligne

 

#4 22-04-2008 14:24:40

apsy
Membre
Date d'inscription: 25-06-2007
Messages: 50

Re: [Zend_Filter_input] Escape et UTF8

Personnelement, dans mon bootstrap, j'ai un "iconv_set_encoding('internal_encoding', 'utf-8');" qui permet d'utiliser l'utf-8 pour les fonctions sur les chaines de caracteres.

J'utilise cette fonction car en regardant du côté d'un "Zend_Validate_StringLength::isValid", Zend utilise la fonction "iconv_strlen" pour connaitre la taille d'une chaine. J'ai donc présumé utilisé le bon parametre. Est-ce normal qu'avec "mb" ça fonctionne ? Je vais creuser le problème smile

Source : http://www.z-f.fr/forum/viewtopic.php?pid=5743#p5743

Dernière modification par apsy (22-04-2008 14:25:00)

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