Précédent   Forum des professionnels en informatique > PHP > Outils > Zend > Zend Framework > Zend_Form
Zend_Form Forum d'entraide pour le composant Zend_Form du Zend Framework (création de formulaires, helpers, AJAX etc.). Avant de poster -> FAQ Zend_Form.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 24/08/2011, 14h20   #1
Membre confirmé
 
Avatar de schwarzy2
 
Femme Raphaelle Simonney
Développeur Web
Inscription : septembre 2006
Messages : 454
Détails du profil
Informations personnelles :
Nom : Femme Raphaelle Simonney
Âge : 25
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : septembre 2006
Messages : 454
Points : 256
Points : 256
Par défaut $form->populate n'affiche pas les libellés avec caractères spéciaux

Bonjour à tous,

je sais que je viens reposer des questions sur un sujet maintes fois abordé, mais j'ai essayé les différents méthodes lues ici et là sur Google et aucune n'a fonctionné.
Voici ma situation:
  • Code :
    1
    2
    3
    4
    5
    <!DOCTYPE html
            PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
            "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
        <html>
        <head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    dans mon layout
  • base de données, tables en UTF-8
lorsque j'essaye d'afficher un libellé avec un caractère spécial par un form->populate() le libellé n'apparaît pas s'il possède un accent.

J'ai donc essayé d'ajouter un
Code :
1
2
$this->_layout = Zend_Layout::getMvcInstance ( )->getView ( );
        $this->_layout->setEscape ( 'utf8_encode' );
dans mon Bootstrap, mon libellé avec accent apparaît alors. Mais lorsque je l'enregistre, j'obtiens alors un mauvais encodage, le texte enregistré est le suivant:
my catégorie!

Donc si quelqu'un voulait bien m'aider à comprendre ce qui se passe exactement, je débute sur Zend...

Merci d'avance

schwarzy2
__________________
Feel good, feel geek
schwarzy2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/08/2011, 18h16   #2
Modérateur
 
Homme Loïc
Développeur Web
Inscription : février 2011
Messages : 678
Détails du profil
Informations personnelles :
Nom : Homme Loïc
Âge : 26
Localisation : France, Hérault (Languedoc Roussillon)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : février 2011
Messages : 678
Points : 1 041
Points : 1 041
Vérifie l encodage de ton editeur
5h4rk est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/08/2011, 09h38   #3
Membre régulier
 
Homme Thomas DUTRION
Développeur Web
Inscription : février 2009
Messages : 58
Détails du profil
Informations personnelles :
Nom : Homme Thomas DUTRION
Âge : 23
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : février 2009
Messages : 58
Points : 93
Points : 93
Si les données viennent de la BD, tu peux aussi vérifier que ta connexion est en utf8 :
resources.db.params.charset = "utf8"
Théocrite est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 25/08/2011, 17h10   #4
Membre chevronné
 
Homme Taoufiq Ben
Développeur Web
Inscription : mai 2009
Messages : 460
Détails du profil
Informations personnelles :
Nom : Homme Taoufiq Ben
Âge : 25
Localisation : Maroc

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mai 2009
Messages : 460
Points : 644
Points : 644
Initialise ta vue dans le bootstrap en UTF8
Code :
1
2
3
4
5
6
7
8
 
public function _initView
{
    $view = new Zend_View(); 
    $view->setEncoding('UTF-8'); 
    $viewRenderer = Zend_Controller_Action_HelperBroker::getStaticHelper('viewRenderer');
    $viewRenderer->setView($view);
}
Une fois que tu submit la page les valeurs des inputs seront encoder "Catégorie" il sera enregistrer dans la base "catégorie" et dans la sortie "catégorie" sera afficher "Catégorie".
m4riachi est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 30/08/2011, 11h10   #5
Membre confirmé
 
Avatar de schwarzy2
 
Femme Raphaelle Simonney
Développeur Web
Inscription : septembre 2006
Messages : 454
Détails du profil
Informations personnelles :
Nom : Femme Raphaelle Simonney
Âge : 25
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : septembre 2006
Messages : 454
Points : 256
Points : 256
décidément, ce forum est toujours aussi génial! Encore une fois, vous m'avez apporté la solution. J'ai ajouté:
Code :
resources.db.params.charset = "utf8"
dans mon application.ini
et ajouté:
Code :
$view->setEncoding('UTF-8');
dans la fonction _initView() de mon Bootstrap, et tout marche nickel!

merci beaucoup
__________________
Feel good, feel geek
schwarzy2 est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 08h21.


 
 
 
 
Partenaires

Hébergement Web