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

EDI, CMS, Outils, Scripts et API PHP Discussion :

UTF-8 et phpMyAdmin : problèmes d'encodage [phpMyAdmin]


Sujet :

EDI, CMS, Outils, Scripts et API PHP

  1. #1
    Membre régulier
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2005
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Février 2005
    Messages : 93
    Points : 87
    Points
    87
    Par défaut UTF-8 et phpMyAdmin : problèmes d'encodage
    Suite à ce thread, j'ai décidé de passer à l'utf-8: http://www.developpez.net/forums/viewtopic.php?t=461471
    Mais j'ai déjà un problème! Dans ma base de données, il y a des caractères "bizarres" pour les "é" (par exemple) il y a: é

    Pourtant:
    interclassement: utf8_unicode_ci
    Jeu de caractères pour MySQL: UTF-8 Unicode (utf8)
    nterclassement pour la connection MySQL UTF-8 Unicode-ci

    J'utilise phpMyAdmin, et l'encodage des caractères (firefox) est bien utf-8.

    Merci pour votre aide!

    EDIT: lorsque dans ma page php je fais un select, cela s'affiche correctement
    EDIT2: phpmyadmin 2.6.0pl3

  2. #2
    Membre habitué Avatar de ..:: Atchoum ::..
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    159
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 159
    Points : 156
    Points
    156
    Par défaut
    Salut,

    Attention à la configuration de l'affichage de phpMyAdmin. Peut etre bien que tout est en UTF-8 mais que ton phpmyadmin l'affiche en ISO....

    On ne peut empêcher les vagues, mais on peut apprendre à les surfer...
    http://blog.plopix.net
    http://www.ez-france.org

  3. #3
    Membre régulier
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2005
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Février 2005
    Messages : 93
    Points : 87
    Points
    87
    Par défaut
    et donc je fais comment pour insérer manuellement des données (depuis phpMyAdmin). Car en effet, si j'insère "é", le select de ma page php affiche un losange noir avec un "?" à l'intérieur.

    Est-ce un fichier de config à modifier?

    Merci pour cette aide au passage à utf-8

  4. #4
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Et ton flux html ?

  5. #5
    Membre régulier
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2005
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Février 2005
    Messages : 93
    Points : 87
    Points
    87
    Par défaut
    Citation Envoyé par Mr N.
    Et ton flux html ?
    hem, tu veux parler de quoi :
    Si c'est de l'option affichage->encodage des caractères (sous firefox) c'est bien en utf-8.

    Et sinon j'ai bien mis le <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

  6. #6
    Membre régulier
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2005
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Février 2005
    Messages : 93
    Points : 87
    Points
    87
    Par défaut
    Les caractères que j'appelais "bizarres" sont en fait les correspondants iso-8859-1 de l'utf-8.
    phpMyAdmin ne veut pas me les afficher en utf-8! (et donc je ne peux pas insérer non plus via phpmyadmin)!

  7. #7
    Membre régulier
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2005
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Février 2005
    Messages : 93
    Points : 87
    Points
    87
    Par défaut
    mmh, je trouve pas Malgré mes recherches sur le net, j'ai vu un type qui avait le même problème mais aucune réponse

  8. #8
    Membre habitué
    Inscrit en
    Août 2005
    Messages
    142
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 142
    Points : 156
    Points
    156
    Par défaut
    regarde la source html de phpMyAdmin via Firefox et regarde si ya la bonne <meta> utf-8

    sinon essaye un .htaccess avec AddDefaultCharset UTF-8 dans le repertoire de phpMyAdmin pour voir se que sa donne

  9. #9
    Membre régulier
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2005
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Février 2005
    Messages : 93
    Points : 87
    Points
    87
    Par défaut
    1) C'est bien en utf-8
    2) rien ne change

    Merci pour ces propositions, mais je ne comprend pas du tout pourquoi phpmyadmin affiche cela. Est-ce que mes données ne sont pas VRIAMENT en utf-8?

  10. #10
    Membre habitué
    Inscrit en
    Août 2005
    Messages
    142
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 142
    Points : 156
    Points
    156
    Par défaut
    As tu bien reseigné l'interclassement UTF-8 de ta base de donnée, de tes tables et de leur champs?

  11. #11
    Membre régulier
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2005
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Février 2005
    Messages : 93
    Points : 87
    Points
    87
    Par défaut
    question: faut-il changer qqch quand on passe en utf-8 dans php.ini ou dans le fichier de config de phpmyadmin?

  12. #12
    Membre régulier
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2005
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Février 2005
    Messages : 93
    Points : 87
    Points
    87
    Par défaut
    Désolé de remonter le sujet, mais je ne trouve pas de réponse.

    Config:
    - php5.04
    - mysql 4.1.12
    - phpMyAdmin 2.6.0-pl3
    phpmyadmin:
    - Language: Fr-UTF-8
    - Jeu de caractères pour MySQL: UTF-8 Unicode (utf8)
    - Interclassement pour la connection MySQL: UTF8_general_ci
    - Interclassement de la BD: utf8_general_ci

    Lorsque je me connecte je fais bien une query genre "set names utf-8", et en me connectant hors phpmyadmin j'ai pu bien voir que les caractères sont bien en utf8. (en lignes de commandes il s'affiche aussi é pour un "é")

    Le problème: sous phpMyAdmin les caractères sont affichés comme si c'était de l'iso => les é deviennent é (donc on ne peut pas insérer non plus: dans ce cas il s'insère un "é" => dans ma page php j'ai un losange noir avec un "?")

    Détails: mb_string n'est pas installé, aucun fichier de config modifié, le charset est utf-8 dans les <meta> myadmin. Pas de reboot.

    Si qqn a la moindre idée, cela m'aiderait bcp!!! Merci!

  13. #13
    Membre actif
    Profil pro
    Ingénieur développement
    Inscrit en
    Juillet 2004
    Messages
    323
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement

    Informations forums :
    Inscription : Juillet 2004
    Messages : 323
    Points : 291
    Points
    291
    Par défaut
    J'ai exactement le même problème que toi.
    As-tu trouvé une solution?
    Хајде Јано коло да играмо

  14. #14
    Membre extrêmement actif Avatar de lodan
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 064
    Points : 682
    Points
    682
    Par défaut utf-8 suite
    Je traine cette galère depuis un bon moment et de temps en temps je cherche la solution sur le net.

    Cela semble venir de nul part et pourtant nous sommes nombreux dans ce cas.

    Il est clair pour moi que je ne dois pas toucher aux paramètres par défaut de Firefox, puisque l'utilisateur visitant un site ne doit modifier ses paramètres.

    Il y a sur firefox dans "Affichage" "Encodage des caractères" "Détection automatique" (Désactivé).

    Celui là j'aimerai bien l'activer pour voir, mais je ne trouve pas comment.

    J'utilise Golive CS2 pour créer mes pages, elles doivent être en encodage utf-8 ?

    Ma base mysql sous phpmyadmin est en utf-8 idem pour les tables et les champs.

    Je ne vois rien d'autre
    Y a pas, plus on fait, plus on sait. Plus on cherche, plus on sait chercher. Maintenant quant à trouver, c'est autre chose.

  15. #15
    Membre actif
    Profil pro
    Ingénieur développement
    Inscrit en
    Juillet 2004
    Messages
    323
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement

    Informations forums :
    Inscription : Juillet 2004
    Messages : 323
    Points : 291
    Points
    291
    Par défaut
    Ok, c'est bon, j'ai la solution.

    J'ai ajouté 2 lignes dans les fichiers dbi contenus dans le répertoire librairies/dbi/

    Voici les lignes pour chaque fichier :
    dans mysql.dbi.lib.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    mysql_query("SET SESSION CHARACTER_SET_RESULTS =latin1;",$link);
        mysql_query("SET SESSION CHARACTER_SET_CLIENT =latin1;",$link);
    Après PMA_DBI_postConnect($link, $is_controluser);
    et avant return $link;
    Dans la fonction PMA_DBI_connect

    Au même endroit, dans le fichier mysqli.dbi.lib.php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    mysqli_query($link, "SET SESSION CHARACTER_SET_RESULTS =latin1;");
    mysqli_query($link, "SET SESSION CHARACTER_SET_CLIENT =latin1;");
    Il s'agit en fait d'éviter au client mysql de faire une double conversion vers l'utf-8.

    Voici le code complet des deux pages maintenant pour la fonction à modifier :
    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
     
    function PMA_DBI_connect($user, $password, $is_controluser = FALSE) {
        global $cfg, $php_errormsg;
     
        $server_port   = (empty($cfg['Server']['port']))
                       ? ''
                       : ':' . $cfg['Server']['port'];
     
        if (strtolower($cfg['Server']['connect_type']) == 'tcp') {
            $cfg['Server']['socket'] = '';
        }
     
        $server_socket = (empty($cfg['Server']['socket']))
                       ? ''
                       : ':' . $cfg['Server']['socket'];
     
        if (PMA_PHP_INT_VERSION >= 40300 && PMA_MYSQL_CLIENT_API >= 32349) {
            $client_flags = $cfg['Server']['compress'] && defined('MYSQL_CLIENT_COMPRESS') ? MYSQL_CLIENT_COMPRESS : 0;
            // always use CLIENT_LOCAL_FILES as defined in mysql_com.h
            // for the case where the client library was not compiled
            // with --enable-local-infile
            $client_flags |= 128;
        }
     
        if (empty($client_flags)) {
            $connect_func = 'mysql_' . ($cfg['PersistentConnections'] ? 'p' : '') . 'connect';
            $link = @$connect_func($cfg['Server']['host'] . $server_port . $server_socket, $user, $password);
        } else {
            if ($cfg['PersistentConnections']) {
                $link = @mysql_pconnect($cfg['Server']['host'] . $server_port . $server_socket, $user, $password, $client_flags);
            } else {
                $link = @mysql_connect($cfg['Server']['host'] . $server_port . $server_socket, $user, $password, FALSE, $client_flags);
            }
        }
     
        if (empty($link)) {
            PMA_auth_fails();
        } // end if
     
        PMA_DBI_postConnect($link, $is_controluser);
     
        mysql_query("SET SESSION CHARACTER_SET_RESULTS =latin1;",$link);
        mysql_query("SET SESSION CHARACTER_SET_CLIENT =latin1;",$link);
        return $link;
    }
    et

    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
    function PMA_DBI_connect($user, $password, $is_controluser = FALSE)
    {
        global $cfg, $php_errormsg;
     
        $server_port   = (empty($cfg['Server']['port']))
                       ? FALSE
                       : (int) $cfg['Server']['port'];
     
        if (strtolower($cfg['Server']['connect_type']) == 'tcp') {
            $cfg['Server']['socket'] = '';
        }
     
        // NULL enables connection to the default socket
        $server_socket = (empty($cfg['Server']['socket']))
                       ? null
                       : $cfg['Server']['socket'];
     
        $link = mysqli_init();
     
        mysqli_options($link, MYSQLI_OPT_LOCAL_INFILE, TRUE);
     
        $client_flags = $cfg['Server']['compress'] && defined('MYSQLI_CLIENT_COMPRESS') ? MYSQLI_CLIENT_COMPRESS : 0;
     
        $return_value = @mysqli_real_connect($link, $cfg['Server']['host'], $user, $password, FALSE, $server_port, $server_socket, $client_flags);
     
        if ($return_value == FALSE) {
            PMA_auth_fails();
        } // end if
     
        PMA_DBI_postConnect($link, $is_controluser);
        mysqli_query($link, "SET SESSION CHARACTER_SET_RESULTS =latin1;");
        mysqli_query($link, "SET SESSION CHARACTER_SET_CLIENT =latin1;");
        return $link;
    }
    Хајде Јано коло да играмо

  16. #16
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Etant donné qu'on trouve cette solution en cherchant un peu, je préfère préciser ici que ce n'est pas du tout ce qu'il faut faire.

    Pour se connecter à une base en utf-8 sur mysql en utilisant PHP, il faut préciser après le mysql_connect :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mysql_query("SET NAMES 'UTF8'")
    Dans de nombreux frameworks PHP, il est possible de configurer sa connection à la base. Avec cakephp par exemple, il faut ajouter dans la configuration de base de données :

    Ainsi, les données affichées par phpmyadmin et les requêtes PHP seront les mêmes.

  17. #17
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 25
    Points : 21
    Points
    21
    Par défaut
    Citation Envoyé par Xargos Voir le message
    Etant donné qu'on trouve cette solution en cherchant un peu, je préfère préciser ici que ce n'est pas du tout ce qu'il faut faire.

    Pour se connecter à une base en utf-8 sur mysql en utilisant PHP, il faut préciser après le mysql_connect :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mysql_query("SET NAMES 'UTF8'")
    J'ai déjà ça en place.
    Même mon SET NAMES est redondant par rapport à la config de MySql. Le problème reste le même :
    - tout en utf8 dans les pages accès, enregistrement, modification via php
    - tout en utf8 dans Mysql
    Aucun pb

    Dès qu'on affiche dans PMA, ça ressemble à de l'iso affiché en utf8

    la solution énoncée dans le post précédent le tien ne me paraît pas "super" parce que ça demande de patcher, mais elle a le mérite de résoudre le souci.
    Même si je pense fortement que le souci est en amont avec un truc oublié dans un coin :\

    Nico

  18. #18
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 25
    Points : 21
    Points
    21
    Par défaut Résolu : Ok pour moi
    Bonjour

    Pour moi résolu avec :
    mysql_query("SET NAMES 'utf8'") ;

    Je l'avais mis après le return de ma fonction de connexion à la base
    Les plus gros problèmes sont entre la chaise et le clavier... m'en bat la culpe ici publiquement :\

    Du coup, ça fonctionne bien quelque soit le mode de connexion à la base : PMA, mon appli, en console directos via mysql

    Glané dans les recherches :
    http://wiki.cihar.com/pma/garbled_data
    et
    http://fr.php.net/manual/fr/function...et-charset.php

    Nico

  19. #19
    Membre régulier
    Inscrit en
    Septembre 2008
    Messages
    202
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 202
    Points : 76
    Points
    76
    Par défaut Utf-8 carractere arabe
    Citation Envoyé par SuperCed Voir le message
    Ok, c'est bon, j'ai la solution.

    J'ai ajouté 2 lignes dans les fichiers dbi contenus dans le répertoire librairies/dbi/

    Voici les lignes pour chaque fichier :
    dans mysql.dbi.lib.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    mysql_query("SET SESSION CHARACTER_SET_RESULTS =latin1;",$link);
        mysql_query("SET SESSION CHARACTER_SET_CLIENT =latin1;",$link);
    Après PMA_DBI_postConnect($link, $is_controluser);
    et avant return $link;
    Dans la fonction PMA_DBI_connect

    Au même endroit, dans le fichier mysqli.dbi.lib.php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    mysqli_query($link, "SET SESSION CHARACTER_SET_RESULTS =latin1;");
    mysqli_query($link, "SET SESSION CHARACTER_SET_CLIENT =latin1;");
    Il s'agit en fait d'éviter au client mysql de faire une double conversion vers l'utf-8.

    Voici le code complet des deux pages maintenant pour la fonction à modifier :
    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
     
    function PMA_DBI_connect($user, $password, $is_controluser = FALSE) {
        global $cfg, $php_errormsg;
     
        $server_port   = (empty($cfg['Server']['port']))
                       ? ''
                       : ':' . $cfg['Server']['port'];
     
        if (strtolower($cfg['Server']['connect_type']) == 'tcp') {
            $cfg['Server']['socket'] = '';
        }
     
        $server_socket = (empty($cfg['Server']['socket']))
                       ? ''
                       : ':' . $cfg['Server']['socket'];
     
        if (PMA_PHP_INT_VERSION >= 40300 && PMA_MYSQL_CLIENT_API >= 32349) {
            $client_flags = $cfg['Server']['compress'] && defined('MYSQL_CLIENT_COMPRESS') ? MYSQL_CLIENT_COMPRESS : 0;
            // always use CLIENT_LOCAL_FILES as defined in mysql_com.h
            // for the case where the client library was not compiled
            // with --enable-local-infile
            $client_flags |= 128;
        }
     
        if (empty($client_flags)) {
            $connect_func = 'mysql_' . ($cfg['PersistentConnections'] ? 'p' : '') . 'connect';
            $link = @$connect_func($cfg['Server']['host'] . $server_port . $server_socket, $user, $password);
        } else {
            if ($cfg['PersistentConnections']) {
                $link = @mysql_pconnect($cfg['Server']['host'] . $server_port . $server_socket, $user, $password, $client_flags);
            } else {
                $link = @mysql_connect($cfg['Server']['host'] . $server_port . $server_socket, $user, $password, FALSE, $client_flags);
            }
        }
     
        if (empty($link)) {
            PMA_auth_fails();
        } // end if
     
        PMA_DBI_postConnect($link, $is_controluser);
     
        mysql_query("SET SESSION CHARACTER_SET_RESULTS =latin1;",$link);
        mysql_query("SET SESSION CHARACTER_SET_CLIENT =latin1;",$link);
        return $link;
    }
    et

    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
    function PMA_DBI_connect($user, $password, $is_controluser = FALSE)
    {
        global $cfg, $php_errormsg;
     
        $server_port   = (empty($cfg['Server']['port']))
                       ? FALSE
                       : (int) $cfg['Server']['port'];
     
        if (strtolower($cfg['Server']['connect_type']) == 'tcp') {
            $cfg['Server']['socket'] = '';
        }
     
        // NULL enables connection to the default socket
        $server_socket = (empty($cfg['Server']['socket']))
                       ? null
                       : $cfg['Server']['socket'];
     
        $link = mysqli_init();
     
        mysqli_options($link, MYSQLI_OPT_LOCAL_INFILE, TRUE);
     
        $client_flags = $cfg['Server']['compress'] && defined('MYSQLI_CLIENT_COMPRESS') ? MYSQLI_CLIENT_COMPRESS : 0;
     
        $return_value = @mysqli_real_connect($link, $cfg['Server']['host'], $user, $password, FALSE, $server_port, $server_socket, $client_flags);
     
        if ($return_value == FALSE) {
            PMA_auth_fails();
        } // end if
     
        PMA_DBI_postConnect($link, $is_controluser);
        mysqli_query($link, "SET SESSION CHARACTER_SET_RESULTS =latin1;");
        mysqli_query($link, "SET SESSION CHARACTER_SET_CLIENT =latin1;");
        return $link;
    }
    Bonjour
    j'ai le meme probleme mais avec les carracteres arabes.
    quand jesaisiun nom arabe il m'affiche l'erreur suivante"data too long for nom" nom c'est le nom du chap
    SVP aidez moi

  20. #20
    Membre actif
    Profil pro
    Ingénieur développement
    Inscrit en
    Juillet 2004
    Messages
    323
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement

    Informations forums :
    Inscription : Juillet 2004
    Messages : 323
    Points : 291
    Points
    291
    Par défaut
    Citation Envoyé par Amel_B Voir le message
    Bonjour
    j'ai le meme probleme mais avec les carracteres arabes.
    quand jesaisiun nom arabe il m'affiche l'erreur suivante"data too long for nom" nom c'est le nom du chap
    SVP aidez moi
    Il s'agit peut être de changer latin 1 par le nom de l'encodage utilisé pour afficher des caractères arabes.

    Il faut aussi faire attention, je pense que les caractères arabes peuvent être sur 4 octets. Il faut donc bien faire des tests multioctets quand on teste la longueur des châines.
    Хајде Јано коло да играмо

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. [DOM] Problème d'encodage UTF-8
    Par Valter dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 14/05/2008, 16h32
  2. problème d'encodage ISO /UTF
    Par CUCARACHA dans le forum ASP.NET
    Réponses: 9
    Dernier message: 09/04/2008, 19h48
  3. Problème d'encodage UTF-8
    Par Shugo78 dans le forum Ubuntu
    Réponses: 0
    Dernier message: 23/11/2007, 20h40
  4. [MySQL] Problème d'encodage UTF-8
    Par cloridriks dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 30/10/2007, 12h19
  5. Problème d'encodage en UTF-8
    Par navis84 dans le forum Langage
    Réponses: 5
    Dernier message: 29/08/2006, 12h19

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