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 :

IMAP et encodage japonnais


Sujet :

Langage PHP

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Juin 2006
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 3
    Points : 1
    Points
    1
    Par défaut IMAP et encodage japonnais
    Bonjour,

    J'ai fait des recherches sur le forum à ce sujet, mais sans succès.

    Alors le principe : J'envoie des mails sur une boite mail gmail (enfin peu importe je pense) et un script php activé par un cron va lire ces mails et les traiter.

    Ces mails peuvent venir de mon keitai (donc mon mobile japonais), de mon compte gmail.. (de n'importe ou en fait..) Donc j'ai besoin de connaitre le charset utilisé dans ce mail pour pouvoir l'encoder les data en UTF-8 et les stocker ou non dans ma base MySQL.
    J'utilise pour ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $infos = imap_fetchstructure($inbox,$email_number);
    if ($infos->parameters[0]->attribute == "CHARSET")
    {
      echo "Charset : ".$infos->parameters[0]->value;
    }
    Jusque là ça va.

    Le hic.. C'est que lors de mes tests d'envoi d'email par gmail..
    1) Si je ne mets pas de japonais dans le corps du mail, le charset reconnu est "ISO-8859-1". => OK
    2) Si je met du japonais.., parfois le charset reconnu est ISO-2022-JP et parfois UTF-8.. Quand j'ai du ISO-2022-JP, je l'encode en UTF-8 et c'est tout bon. Mais quand je reçois de l'UTF-8.. Ben je fais rien et je traite les données comme ça manque de bol je peux pas traiter les données, elles sont illissibles.

    Un exemple peut etre qui sera plus parlant.. :
    MAIL 1 :
    えあぜ-toto
    => Charset reconnu UTF-8 :
    Data : 44GI44GC44GcLXRvdG8KCi0tIApKdWxpZW4K
    => KO

    MAIL 2 :
    こうこう-lycee
    => Charset reconnu ISO-2022-JP :
    Data : こうこう-lycee
    => OK

    MAIL 3 :
    えあぜ-toto
    こうこう-lycee
    => Charset reconnu ISO-2022-JP :
    => OK

    J'ai fait ces tests 10x, même résultats. Donc si vous voulez tester chez vous aussi..
    Bref je ne suis pas doué dans ce domaine d'encodage, charset & co dont peut être que je passe à coté d'un point essentiel.. C'est pourquoi je fais appel à vous

    Merci d'avance.

  2. #2
    mon_nom_est_personne
    Invité(e)
    Par défaut
    t'as chaine en uft-8 est encodee en base64 donc passe un coup de base64_decode. T'es mail en uft-8 viennent de ton mobile? (keitai n'est connu qu'au japon hein )
    Car faut faire attention au multi-part, tu decode peut-etre pas la bonne partie.

  3. #3
    Nouveau Candidat au Club
    Inscrit en
    Juin 2006
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    D'accord je vais voir sur google ce que ça veut dire exactement cette histoire de base64 et vais tester de ce pas. Merci beaucoup pour cette première piste

    Sinon les tests viennent tous de gmail.
    De mon keitai (docomo) ça vient toujours en "Shift_JIS". Je crois que c'est du au x emoji. Shift_JIS serait le seul capable de les gèrer. (Si je ne me trompe point)

  4. #4
    mon_nom_est_personne
    Invité(e)
    Par défaut
    Docomo viens en effet en shift_jis si il y a des emoji, sinon cest de l'iso...jp. Et softbank deviens utf-8. Mais comme dis precedement quand il y a emoji, le contunue de l'e-mail est encoder en base64.
    Y'a un super bouquin (en japonais) pour se faire les bases du development pour mobile au japon c'est "PHP X 携帯" (isbn978-4-7973-4846-0) ca va de la simple page pour mobile jusqu'au appli avec gps et google map en passant par les decomail.

  5. #5
    Nouveau Candidat au Club
    Inscrit en
    Juin 2006
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Alors j'ai testé cette fonction de decode et c'est parfait ça a réglé mes problèmes de messages "えあぜ-toto"

    Mais.. Mais.. Maintenant ça bousille d'autres messages UTF-8 qui à priori ne sont pas encoder en 64 donc ça veut dire que je dois bosser le sujet plus sérieusement que je ne le croyais Merci en tous cas, je pense que je finirai par faire qqchose de propre et générique.

    Sinon sympa ta référence de livre, je vais le faire lire par un pote qui sera surement intéressé. Je le suis aussi évidement.. Mais mes connaissances en Kanji sont plus que limités..
    Ma curiosité me forcera quand même à aller dans un book store zieuter le contenu avant de me rendre à Shibuya..

    Bref bref merci beaucoup! (Plus de 3 ans que je suis inscrit, c'était ma première discussion.. fiouu.. ^^)

Discussions similaires

  1. Imap gmail problème d'encodage et autre
    Par Kurtis88 dans le forum Langage
    Réponses: 0
    Dernier message: 01/09/2014, 16h10
  2. Encodage du contenu du mail avec IMAP
    Par cyreel dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 25/09/2009, 10h19
  3. [ENCODAGE][JAVA]Afficher correctement des accents
    Par kornelius dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 17/02/2004, 16h37
  4. Encodages DOS et Windows
    Par Aramis dans le forum Langage
    Réponses: 5
    Dernier message: 09/11/2003, 17h55
  5. [VB6] fonction d' encodage URL en VB
    Par jeanseb dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 14/01/2003, 11h16

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