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

PHP & Base de données Discussion :

Affichage de caractères spéciaux


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    poireau
    Inscrit en
    Juin 2008
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : poireau

    Informations forums :
    Inscription : Juin 2008
    Messages : 98
    Par défaut Affichage de caractères spéciaux
    Bonsoir à toutes et tous

    les caractères accentués des textes provenant de ma base de données s'affichent avec un losange noir et point d'interrogation sauf lorsqu'ils sont codés avec (exemple) é .à la place de é
    par contre les textes avec caractères accentués provenant de mes scripts s'affichent correctement.

    mon serveur local : wampserver
    éditeur : dreamweaver
    navigateurs mozilla et IE

    dans tous mes scripts avec <head> j'ai mis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <meta charset="UTF-8">
    et dans mon fichier htaccess
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    AddDefaultCharset utf-8
    rien n'y change ...
    si quelqu'une ou quelqu'un a une piste sérieuse elle sera bienvenue

  2. #2
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 698
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 698
    Par défaut
    c'est peut-être les réglages de la base de données qui sont à modifier.
    regardez cet article :
    https://antoun.developpez.com/mysql5/jeux-collations/

  3. #3
    Membre confirmé
    Profil pro
    poireau
    Inscrit en
    Juin 2008
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : poireau

    Informations forums :
    Inscription : Juin 2008
    Messages : 98
    Par défaut petite progression
    bonsoir

    23 pages à lire .. la doc ne manque pas d’intérêt. Les explications sont nombreuses . En lisant la page 4 , j'ai déjà oublié ce qu'il y avait en page 1 . Pas encore vraiment éclairé pour mon problème . Je la relirai .

    Ce que j'ai pu en retenir m'a conduit à effacer puis recréer ma BD en UTF8_unicode_ci.
    Le problème d'affichage des textes provenant de la BD semble avoir été résolu mais surtout avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $link -> set_charset("utf8");
    que j'ai mis dans ma config juste après la connexion .
    Ce qui me semble étrange c'est de devoir préciser set_charset UTF-8 à une base de donnée qui est déjà configurée en UTF-8 !!

    maintenant je retrouve un problème similaire avec les retours de mes fonctions en partie concaténés avec "¤" et qui ne passent pas lorsque je souhaite les récupérer ..
    la function incriminée :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    function getTailleQuantite($xTaille, $xQuantite, $xValue, $xIndexTab, $xPrix, $xCoef){
    	if($xQuantite > 0){
    		return "<input type='radio' name='taille_" . $xIndexTab . "' value='" . $xValue . "¤" . $xPrix . "¤" . $xCoef . "'style='border-right: 1px solid #9EF776 ; border-bottom: 1px solid #9EF776'>";}
    		else {
    			return "<input type='radio' name='taille_" . $xIndexTab . "' value='" . $xValue . "¤" . $xPrix . "¤" . $xCoef . "' >";}
     
    }

  4. #4
    Membre éclairé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2009
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Septembre 2009
    Messages : 35
    Par défaut tuto utf8
    Bonjour
    Voir ce tuto et revenir nous voir
    https://j-willette.developpez.com/tu...-site-en-utf8/
    Ne pas oublier de déclarer ses scripts en UTF8 sans bom
    et la connexion sql avec mysql_set_charset( 'utf8' ); ou SET NAMES "utf8";
    Et le cache de son navigateur s'il existe....

  5. #5
    Membre confirmé
    Profil pro
    poireau
    Inscrit en
    Juin 2008
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : poireau

    Informations forums :
    Inscription : Juin 2008
    Messages : 98
    Par défaut UTF-8 suite
    Bon !!
    J'ai relu jeux et collations ce matin . Jusqu'à la page 10 .. très intéressant et compréhensible . Après, c'est devenu , pour moi, un peu confus jusqu'à la .. noyade.
    15 mn d'apnée, et lecture du tuto encoder-son-site-en-utf8 (plus accessible .. pour moi) . J'ai suivi à la lettre, configuré ma BD utf8_unicode_ci .

    ensuite j'ai repris tous mes scripts et les ai convertis , pour ceux qui ne l'étaient pas , en UTF-8 sans cocher la case BOM . Revu les textes et remplacé les caractères qui s'étaient transformés à la conversion . Une bonne partie étaient en "Europe de l'ouest".

    Lorsque j'essaie, il y a une foultitude de messages d'erreur avec la fonction preg_replace que j'utilise dans mon fichier de config qui me disent : Warning: preg_replace(): Unknow modifier 'ici le losange avec point d'interrogation" in .... . Il y a donc des caractères qu'il ne reconnait pas !!
    Tous ces messages d'erreur disparaissent lorsque je remets le fichier en encodage "Europe de l'ouest". Par contre , j'ai toujours mon problème avec ce qui me revient de mes formulaires et les fonction qui sont dans mon fichier de config ... là, ça fume ...

  6. #6
    Membre émérite
    Femme Profil pro
    Service informatique presque à moi seule (TPE), ex-architecte fonctionnel
    Inscrit en
    Août 2017
    Messages
    358
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 57
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Service informatique presque à moi seule (TPE), ex-architecte fonctionnel
    Secteur : Finance

    Informations forums :
    Inscription : Août 2017
    Messages : 358
    Par défaut Au cas où
    Bonsoir mauyebo,

    En suivant les préconisations de ce billet, j'ai aussi converti (avec Notepad) mes fichiers qui apparaissaient déjà en utf-8 sans BOM et dont les caractères accentués (i.e. ceux saisis dans le fichier même) s'affichaient correctement. Et le comportement de mon application a changé (en mieux !)
    Mais bon, il y avait une circonstance aggravante : rédaction des fichiers sous Windows

    Pour les fichiers, lire avec attention les passages sur les doubles encodages et les guillemets.

    C'est aussi plus détaillé pour les bases de données - MySQL - , mais en moins de 23 pages , et - de mon point de vue - compréhensible : ceci pour les autres infortunés qui liraient ce fil et qui seraient bloqués à cette étape.

    Enfin il y a un paragraphe à la fin sur les fonctions PHP utiles, notamment pour les flux.

    Bon courage.

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

Discussions similaires

  1. Affichage de caractères spéciaux
    Par clairouch dans le forum OpenGL
    Réponses: 5
    Dernier message: 22/06/2006, 11h18
  2. Outil pour l'affichage de caractère spéciaux
    Par ad1lux dans le forum Langage
    Réponses: 1
    Dernier message: 25/05/2006, 21h12
  3. Réponses: 10
    Dernier message: 31/03/2006, 20h46
  4. Affichage de caractère spéciaux absent dans le code source
    Par HNT dans le forum Général Conception Web
    Réponses: 4
    Dernier message: 03/11/2005, 22h38
  5. problème avec l'affichage des caractères spéciaux
    Par michelkey dans le forum Général Python
    Réponses: 4
    Dernier message: 19/08/2005, 08h09

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