Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Bonjour à tous,
j'ai un problème avec les caractères spéciaux pour toutes les données lues depuis la BD.
Voici une action de controlleur qui génére un code JSON que j'exploite ensuite sur un formulaire Zend_form
public function listevecteursAction(){ $this->db->setFetchMode(Zend_Db::FETCH_OBJ); $result = $this->db->fetchAll('select VECTEUR_ID AS id, NOM_VECTEUR AS libelle from INCIDENTS_VECTEURS'); $data = new Zend_Dojo_Data('id', $result, 'libelle'); $this->_helper->autoCompleteDojo($data); }
La requete donne ce résultat sur MS SQL:
select VECTEUR_ID AS id, NOM_VECTEUR AS libelle from INCIDENTS_VECTEURS
Téléphone
Mission
Réception produit
Interne
Fax
Email
Le code Json produit par l'action de Zend:
{"identifier":"id","items":[ {"id":"1","libelle":null}, {"id":"2","libelle":"Mission"}, {"id":"3","libelle":null}, {"id":"4","libelle":"Interne"}, {"id":"5","libelle":"Fax"}, {"id":"6","libelle":"Email"} ],"label":"libelle"}
les caractères spéciaux latins "éèçà..." sont remplacés par null tout simplement.
Pouvez vous me dire s'il vous plaît, comment produire le code JSON avec les caractères spéciaux?
Merci d'avance.
Dernière modification par fatahou (13-05-2009 09:47:18)
Hors ligne
il faut passer en utf-8
c'est ce qu'il a de plus simple avec JSON
A+JYT
Hors ligne
peux tu me montrer comment faire?
Voici le contenu de mon layout:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"> <head> <title>Extranet</title><!-- <meta http-equiv="Content-Language" content="fr"> --> <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
Quand je met dans l'init de mon controlleur:
$this->view->setEscape('utf8_encode');
J'obtiens des caractères mal encodés
ex:
un numéro
Merci d'éclairer ma lanterne sekaijin.
Hors ligne
Problème JSON et caractère latin résolu. La réponse viens de là:
http://www.zfforums.com/zend-framework- … s-210.html
J'ai placé ce code dans le init() de mon controlleur
Zend_Json::$useBuiltinEncoderDecoder = true;
Dernière modification par fatahou (13-05-2009 09:47:47)
Hors ligne
Pages: 1