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 :

Un mb_strtoupper récalcitrant [Encodage]


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre émérite Avatar de alain31tl
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    935
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 935
    Par défaut Un mb_strtoupper récalcitrant
    Bonjour

    Je l'ai souvent utilisé sur d'autres supports et sans rencontrer de difficultés.

    Dans le cas présent, je l'utilise dans une application du type :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    <!DOCTYPE html>
    <meta charset="utf-8" />
    Et rien n'y fait, mes variables enregistrées en db sont évidemment disgracieuses.

    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $evtup = $_POST['evtup'];
    $evtup = mb_strtoupper($evtup);
    => drôle est enregistré ainsi : DRôLE

    Merci à vous pour vos suggestions.

  2. #2
    Membre émérite Avatar de alain31tl
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    935
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 935
    Par défaut
    Bon, j'en suis toujours au même point.

    Tout a été vérifié, meta utf-8, fichier sans BOM, l'encodage apache, l'encodage à la connection sql et l'interclassement, tout y est...mais en vain.
    Doit juste manquer un petit détail, mais quoi ?

    Précision complémentaire, je n'ai pas de problème particulier pour l'affichage des textes "naturels" :
    Le probléme réside seulement lorsque je souhaite mettre en majuscules (avant l'enregistrement en db) les variables transmises via POST.
    Franchement, je ne vois pas ce qui peut clocher. (?)

  3. #3
    Membre Expert
    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 : 40
    Localisation : Thaïlande

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

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 564
    Par défaut
    Si ton encodage est en UTF8, il faut le spécifier dans le second paramètre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mb_strtoupper($evtup, 'UTF-8');

  4. #4
    Membre émérite Avatar de alain31tl
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    935
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 935
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mb_strtoupper($evtup, 'UTF-8');
    Merci Seb

    Reste les accents, mais bon on fera plus tard.

  5. #5
    Membre Expert Avatar de RunCodePhp
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    2 962
    Détails du profil
    Informations personnelles :
    Localisation : Réunion

    Informations forums :
    Inscription : Janvier 2010
    Messages : 2 962
    Par défaut
    Salut

    Tu devrais pouvoir définir une bonne fois l'encodage avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    mb_internal_encoding('UTF-8');
     
    // Puis :
    mb_strtoupper($evtup); // Sans remettre l'encodage

  6. #6
    Membre émérite Avatar de alain31tl
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    935
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 935
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    mb_internal_encoding('UTF-8');
     
    // Puis :
    mb_strtoupper($evtup); // Sans remettre l'encodage
    Salut Run

    Marche pas suivant cette "directive".
    Exemple :
    Variable traitée "électricité" m'enregistre "1" en db. (pas top comme issue)
    Pour rappel, tout a été minutieusement vérifié, meta utf-8, fichier sans BOM, encodage apache, encodage à la connection sql et l'interclassement.

    Juste une question, la version de php pourrait-elle être la cause ?
    Enfin, c'est juste pour écarter cette hypothése.

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

Discussions similaires

  1. [Delphi 7] [RichEdit] ScrollBar récalcitrant
    Par Droïde Système7 dans le forum Composants VCL
    Réponses: 1
    Dernier message: 23/07/2005, 15h30
  2. [Triggers] Deletes en cascade récalcitrants
    Par Coplan dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 04/07/2005, 09h19
  3. Répertoire récalcitrant
    Par Pedro dans le forum Windows XP
    Réponses: 15
    Dernier message: 25/03/2005, 14h06
  4. Update récalcitrant !
    Par Jeannotc dans le forum Bases de données
    Réponses: 10
    Dernier message: 16/06/2004, 18h28
  5. Un "0" récalcitrant
    Par bidson dans le forum XMLRAD
    Réponses: 4
    Dernier message: 20/04/2004, 13h56

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