Précédent   Forum des professionnels en informatique > PHP > Langage > Débuter
Débuter Forum d'entraide pour débuter en PHP. Avant de poster -> Cours PHP, FAQ PHP, Outils PHP, etc.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 08/11/2011, 00h02   #1
Membre du Club
 
Homme
Étudiant
Inscription : août 2010
Messages : 83
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Haute Vienne (Limousin)

Informations professionnelles :
Activité : Étudiant
Secteur : Service public

Informations forums :
Inscription : août 2010
Messages : 83
Points : 58
Points : 58
Par défaut Gestion des accents et UTF-8

Bonjour,
Je suis en train développer un petit forum en PHP.
Je suis contraint d'utiliser PHP4, ne me demander pas pourquoi c'est imposé
J'aimerais que tout soit en UTF-8 mais j'ai des gros soucis, alors je vais essayer d'être le plus clair possible.
Le SQGB est mysql.
Ma base de donnée est en UTF-8 (utf8_general_ci).

Toutes les données entrantes dans ma base subissent un htmlentities(pour éviter les attaques XSS), puis un addcslashes($chaine, '%_') et enfin mysqli_real_escape_string().

Pour l'instant je n'ai rien traité sur les données à afficher provenant de la BD (mis à part le stripslashes()), j'ai des caractères bizarres partout.

Quelles sont les bons traitements à faire en entrée de la BD et les bons traitements à faire pour afficher ce qui provient de la BD.

Merci beaucoup et bonne journée
Alpha573 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/11/2011, 00h12   #2
Membre Expert
 
Avatar de Seb33300
 
Homme Sébastien Alfaiate
Développeur Web
Inscription : janvier 2007
Messages : 1 329
Détails du profil
Informations personnelles :
Nom : Homme Sébastien Alfaiate
Âge : 26
Localisation : France, Gironde (Aquitaine)

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

Informations forums :
Inscription : janvier 2007
Messages : 1 329
Points : 1 657
Points : 1 657
Il y a un tutoriel ici :
http://j-willette.developpez.com/tut...-site-en-utf8/

Quand on veut qu'un site soit encoder en UTF-8, il faut que tout soit en UTF-8 :
les fichiers php, les connexions, la base de donnée, etc...

Edit :
Et attention, de base PHP ne gere pas l'UTF-8, il faut le spécifier dans la plupart des fonctions qui traitent les chaines, par exemple le 3eme paramètre de htmlentities, ou utiliser les fonctions mb_ plutot que les fonction de bases.
__________________
Zend Certified Engineer PHP 5.3

« Crois-tu comprendre le monde juste en matant le 20H Ou connaître l'histoire en ayant lu que l'angle des vainqueurs ? » Keny Arkana
Seb33300 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 10/11/2011, 11h14   #3
Débutant
 
Homme Laurent
Webmaster
Inscription : octobre 2006
Messages : 2 873
Détails du profil
Informations personnelles :
Nom : Homme Laurent
Âge : 48
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Activité : Webmaster
Secteur : Industrie

Informations forums :
Inscription : octobre 2006
Messages : 2 873
Points : 1 320
Points : 1 320
Super ! En lisant ça, comme j'avais un problème d'affichage, j'ai essayé mb_convert_encoding et ça marche...
__________________
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell
laurentSc est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 14h15.


 
 
 
 
Partenaires

Hébergement Web