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

MkFramework Discussion :

Problème utf8 caractères accentués sur serveur OVH


Sujet :

MkFramework

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Homme Profil pro
    Ing R&D
    Inscrit en
    Mars 2015
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Ing R&D

    Informations forums :
    Inscription : Mars 2015
    Messages : 9
    Par défaut Problème utf8 caractères accentués sur serveur OVH
    Bonjour à Tous,

    Le problème a peu être déjà été évoqué mais je n'en ai pas trouvé trace...
    J'ai développé mon application en local :
    (mysql : tables en utf8-general-ci, pages php codées utf8 ; php version 5.6.19, charset=UTF-8 dans site.ini, etc...).
    Cela fonctionne correctement : les caractères accentuées en "dur" des pages php comme les retours de requêtes SQL s'affichent correctement dans FireFox.
    J'ai porté mon appli sur mon compte OVH (mutualisé php version 5.2.17) interclassement de la base et des tables : utf8_general_ci. Les caractères accentuées en "dur" des pages php s'affichent correctement mais pas ceux venant des requêtes SQL.
    Je précise que j'ai fait le test en ajoutant des enregistrements directement dans la BD via phpmyAdmin/OVH. Par exemple pour une table de profil de connexion : prénom, identifiant, password. A la saisie identifiant/password, la session applicative s'ouvre bien mais les prénoms avec caractères accentués sont mal formatés (Ma?t? au lieu de Maïté par exemple).
    J'ai fait des essais avec ce qu'on peut trouver sur le web mais rien n'y fait.... désespoir...énervement...rage
    Y a t-i un paramétrage du framework ou des instructions à ajouter dans les classes de modèles ??

    Merci d'avance pour votre aide.

    JF

  2. #2
    Rédacteur
    Avatar de imikado
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    5 239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 239
    Billets dans le blog
    17
    Par défaut
    Vous pouvez essayer de le préciser dans le fichier de connexion, par exemple: (en ajoutant le charset à la chaine de connexion)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    mysqlExple.dsn="mysql:dbname=blog;host=localhost;charset=UTF8"
    mysqlExple.sgbd=pdo_mysql
    mysqlExple.username=root
    mysqlExple.password=xxxx
    Framework php sécurisé et simple à prendre en main avec générateur web http://mkframework.com/ (hebergé sur developpez.com)
    Mes cours/tutoriaux

  3. #3
    Membre régulier
    Homme Profil pro
    Ing R&D
    Inscrit en
    Mars 2015
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Ing R&D

    Informations forums :
    Inscription : Mars 2015
    Messages : 9
    Par défaut problème utf8 caractères accentués sur serveur OVH : problème persistant
    bonjour,
    Merci pour cette réponse rapide mais cela ne résout pas le problème. J'avais déjà essayé cette piste.
    Y a t-il une méthodologie permettant de cerner le problème. J'avoue être à cours d'idées.
    Salutations
    JF

  4. #4
    Rédacteur
    Avatar de imikado
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    5 239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 239
    Billets dans le blog
    17
    Par défaut
    Et dans le fichier conf/site.ini.php ? il y a bien UTF-8 ?

    note: dans votre navigateur, quel encodage est utilisé ? si vous le changez pour iso ou Utf8 ça résout le problème ?

    dans chrome: menu > plus d'outils > codage
    Framework php sécurisé et simple à prendre en main avec générateur web http://mkframework.com/ (hebergé sur developpez.com)
    Mes cours/tutoriaux

  5. #5
    Membre régulier
    Homme Profil pro
    Ing R&D
    Inscrit en
    Mars 2015
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Ing R&D

    Informations forums :
    Inscription : Mars 2015
    Messages : 9
    Par défaut
    Bonjour Mika,

    Extrait du fichier conf/site.ini.php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    [encodage]
    ;indique l'encodage des fichiers de code, utilise pour la protection des tableaux de contexte ($_GET,$_POST)
    charset=UTF-8
    ;indique si le framework encode en html le code deja en html
    double_encode=0
    J'ai réalisé un script élémentaire suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    <!DOCTYPE html>
    <html lang="fr">
      <head>
        <meta charset="utf-8">
      </head>
      <body>
    <?php
    echo 'test caractères accentués<br/>';
    $user = 'uuuuuu';
    $pass = 'pppppp';
    try {
         $dbh = new PDO('mysql:host=mysqlx-yy.perso;dbname=mabase;charset=utf8', $user, $pass);
         foreach($dbh->query('SELECT post_content FROM matable') as $row){
         print_r($row);
         }
    // dbh = null;
         }
    catch (PDOException $e){
    print "Erreur : ".$e->getMessage()."<br/>";
    die();
    }
    ?>
      </body>
    </html>
    Le problème est le même. Mon navigateur (FireFox) m'indique encodage : Unicode. Si je choisis Occidental, les caractères s'affichent bien .
    Ce qui est étrange , c'est que j'ai appliqué ce script à une table d'un blog sous Wordpress dont les tables sont dans la même base que pour mon appli mkframework et le comportement est le même mais l'affichage dans les pages WP est correct et le navigateur indique bien Unicode.
    Pour info, ceci est extrait de la page html retourné par WP
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    Au niveau des tables testées :
    pour la table WP : MyISAM utf8_general_ci
    pour la table de mon appli : MyISAM utf8_general_ci (j'ai essayé innoDB, pareil...)

    Si je visualise le contenu des tables via phpmyadmin, les caractères s'affichent normalement et mon navigateur indique bien encodage Unicode.Est ce la preuve que l'encodage interne dans la base est correct ?


    Voici un extrait de la commande phpinfo(). Cela peut-il être utile ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    mbstring
    Multibyte Support 	enabled
    Multibyte string engine 	libmbfl
    Multibyte (japanese) regex support 	enabled
    Multibyte regex (oniguruma) version 	4.4.4
    Multibyte regex (oniguruma) backtrack check 	On
     
    mbstring extension makes use of "streamable kanji code filter and converter", which is distributed under the GNU Lesser General Public License version 2.1.
     
    Directive	Local Value	Master Value
    mbstring.detect_order	no value	no value
    mbstring.encoding_translation	Off	Off
    mbstring.func_overload	0	0
    mbstring.http_input	pass	pass
    mbstring.http_output	pass	pass
    mbstring.internal_encoding	no value	no value
    mbstring.language	neutral	neutral
    mbstring.strict_detection	Off	Off
    mbstring.substitute_character	no value	no value

    Merci encore pour votre attention

  6. #6
    Rédacteur
    Avatar de imikado
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    5 239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 239
    Billets dans le blog
    17
    Par défaut
    Il y a un peu d'incohérence:
    Vous dites: sur la page "simplle", vous écrivez en utf8, mais en mettant le navigateur en occidental (ISO-8859-1) là ça s'affiche bien ?

    Dans l'encodage il y a pas de magie:
    • soit on fait toute une chaine neutre avec une base de donnée "signée",
    • soit on met tout d'équerre sur le même charset (fichiers, os, drivers bdd...)


    Je ne sais pas quel OS vous utilisez, mais il faut bien vérifier:
    1. Le charset du serveur
    2. Le charset d'apache
    3. L'encodage de tous les fichiers (soit ascii, soit utf8)


    Question: en changeant le charset de votre navigateur, arrivez-vous à regler le problème ? si oui en mettant quel encodage ?
    Framework php sécurisé et simple à prendre en main avec générateur web http://mkframework.com/ (hebergé sur developpez.com)
    Mes cours/tutoriaux

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 03/12/2010, 19h51
  2. Problème de caractères accentués sur Windows
    Par Invité dans le forum Ada
    Réponses: 1
    Dernier message: 16/04/2010, 09h28
  3. Problème de caractère accentués sur Windows
    Par Invité dans le forum Ada
    Réponses: 7
    Dernier message: 25/11/2009, 16h47
  4. problème de caractères accentués (type êéè)
    Par zarbi61 dans le forum Général Python
    Réponses: 4
    Dernier message: 19/05/2006, 20h12
  5. [MiniPascal] Problème de caractères accentués
    Par Clandestino dans le forum Autres IDE
    Réponses: 3
    Dernier message: 03/10/2004, 13h12

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