IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Caractères accentués, encore [PHP 5.2]


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    87
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 87
    Points : 52
    Points
    52
    Par défaut Caractères accentués, encore
    Bonjour à tous,

    le problème éternel des caractères spéciaux et de l'encodage.

    Du concret : prenons les tutoriels, excellents,
    Débuter avec Zend Framework 1.5 (approche MVC), traduction de G Rossolini
    , et l'original de Rob Allen,
    Getting Started with Zend Framework
    .

    Base de données mySql en utf8 unicode, toutes mes pages php et autres encodées utf8 (avec notepad++), charset défini en utf8..., la totale quoi.

    Valeur en base de données : Ma Série devient sur mes pages Ma S�rie
    A noter qu'un simple echo 'Ma Série', sans prendre valeur en base, fonctionne bien lui.

    Vérifiable avec les projets des 2 tutos mentionnés.

    D'avance, merci de votre intérêt.

  2. #2
    Membre émérite
    Avatar de Seb33300
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Thaïlande

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

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 564
    Points : 2 399
    Points
    2 399
    Par défaut
    As tu placé un :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    header('Content-Type: text/html; charset=utf-8');
    en début de script ?

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    87
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 87
    Points : 52
    Points
    52
    Par défaut
    Voici ce que j'obtiens dans les pages html :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
    Et ce par le biais de

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $view->headMeta()->appendHttpEquiv('Content-Type', 'text/html;charset=utf-8');
    comme indiqué dans tous les tutoriaux, ce me semble.

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Quel encodage affiche ton navigateur ?

  5. #5
    Membre émérite
    Avatar de Seb33300
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Thaïlande

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

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 564
    Points : 2 399
    Points
    2 399
    Par défaut
    As tu fais un SET NAMES UTF8 lors de ta connexion à mysql ?

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    87
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 87
    Points : 52
    Points
    52
    Par défaut
    Oui mes fichiers sont correctement encodés comme indiqué dans le 1er mail :

    à noter que dans mon bootstrap, si je change :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $view->headMeta()->appendHttpEquiv('Content-Type', 'text/html;charset=utf-8');
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $view->headMeta()->appendHttpEquiv('Content-Type', 'text/html;charset=ISO-8859-1')
    , alors le problème est inversé : les données en base sont correctement retranscrites, ce sont alors mes intitulés de menus, de textbox, les textes de mes pages qui sont largués...

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    87
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 87
    Points : 52
    Points
    52
    Par défaut
    Citation Envoyé par Seb33300 Voir le message
    As tu fais un SET NAMES UTF8 lors de ta connexion à mysql ?
    J'y ai pensé, mais dans une config mvc avec boostrap, ou la connexion n'est pas clairement indiquée puisque gérée par le Zend F, sais tu où je devrais placer cette commande ??

  8. #8
    Membre émérite
    Avatar de Seb33300
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Thaïlande

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

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 564
    Points : 2 399
    Points
    2 399
    Par défaut
    Exécute la requête juste après la connexion à la base de donnée ou avant d'exécuter ta première requête

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    87
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 87
    Points : 52
    Points
    52
    Par défaut
    Bien,

    la piste à suivre était donc bien

    Dans le cadre des tutos cités, et donc où les connexions à la Bdd sont abstraites, il faut donc aller dans le fichier de ...\application\configs\application.ini de son site et placer dans la section [Production] la ligne suivante :

    resources.db.params.driver_options.1002 = "SET NAMES UTF8;"

    Et le tour est joué. merci à tous.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Encore un problème de caractères accentués
    Par enicnath dans le forum Général Python
    Réponses: 6
    Dernier message: 15/10/2013, 17h07
  2. Chaines avec caractères accentués dans interbase
    Par Tsimplice dans le forum Bases de données
    Réponses: 4
    Dernier message: 08/03/2004, 17h12
  3. Chaînes avec des caractères accentués dans Interbase
    Par François Marliac dans le forum Bases de données
    Réponses: 2
    Dernier message: 04/03/2004, 22h39
  4. [PostgreSQL] Les caractères accentués ?
    Par yacomor dans le forum Requêtes
    Réponses: 2
    Dernier message: 18/02/2003, 16h30
  5. insérer des caractères accentués INFORMIX/JDBC
    Par donde dans le forum Informix
    Réponses: 2
    Dernier message: 19/11/2002, 20h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo