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 :

problème dans lors de changement de caractère


Sujet :

Langage PHP

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    549
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 549
    Points : 704
    Points
    704
    Par défaut problème dans lors de changement de caractère
    salut


    ma bd et mes fichier php sont en encodé en utf8

    j'ai créer une méthode qui met une string en minuscule, remplace les espaces par des _
    et qui remplace les accents par leur équivalent sans accent....

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    function text2url($string){
      $string=strtolower($string);
      $string=preg_replace('/\s/', '_', $string); 
      return strtr($string,'àáâãäçèéêëìíîïñòóôõöùúûüýÿÀÁÂÃÄÇÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜÝ','aaaaaceeeeiiiinooooouuuuyyAAAAACEEEEIIIINOOOOOUUUUY');
    }
    après ma connexion mysql, j'ai le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    mysql_query("SET NAMES 'UTF8'");
    j'ai aussi dans mon entête
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    header("Content-type: text/html; charset=utf-8");
    dans le fichier php.ini, j'ai mi

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    default_charset = "utf-8"

    or je retrouve avec un remplacement qui ne semble pas correct...
    avec la chaine:

    Quel a été votre première distribution linux?
    je me retrouve avec:
    quel_a_YotYo_votre_premiYire_distribution_linux?

    une idée?

  2. #2
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2011
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2011
    Messages : 15
    Points : 23
    Points
    23
    Par défaut
    UTF-8 peut représenté des caractères sur plusieurs octets (en particulier les caractères spéciaux) et certaines fonctions de manipulation de chaînes ne gèrent pas cette spécificité. Il faudrait vérifier que les fonctions que tu utilises sont "UTF-8-safe".

  3. #3
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    utilise plutôt mysql_set_charset

  4. #4
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2011
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2011
    Messages : 15
    Points : 23
    Points
    23
    Par défaut
    Sur php.net je suis tombé sur ce type de choses, si ça peut t'aider :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    function text2url($string){
      $string=utf8_decode($string);
      $string=strtolower($string);
      $string=preg_replace('/\s/', '_', $string);      
      $string = strtr($string,utf8_decode('àáâãäçèéêëìíîïñòóôõöùúûüýÿÀÁÂÃÄÇÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜÝ'),'aaaaaceeeeiiiinooooouuuuyyAAAAACEEEEIIIINOOOOOUUUUY');
      return utf8_encode($string);
    }

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

Discussions similaires

  1. Problème dans l'exemple changements de l'affichage
    Par hm7845 dans le forum IGN API Géoportail
    Réponses: 2
    Dernier message: 19/02/2011, 18h27
  2. Problème dans des "IF" avec des chaines de caractères
    Par lanysteph dans le forum Langage
    Réponses: 4
    Dernier message: 16/11/2006, 11h37
  3. Problème lors du changement de résolution d'écran
    Par yangoal25 dans le forum VB 6 et antérieur
    Réponses: 10
    Dernier message: 10/11/2006, 15h33
  4. [C#] problème scintillement lors du changement de panel
    Par chasse dans le forum Windows Forms
    Réponses: 3
    Dernier message: 04/10/2006, 15h00
  5. Problème du module login lors du changement de mot de passe
    Par MIC94 dans le forum Wildfly/JBoss
    Réponses: 1
    Dernier message: 31/08/2006, 11h51

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