Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & MySQL
PHP & MySQL Forum d'entraide sur les fonctions MySQL avec PHP. Avant de poster -> FAQ MySQL, Cours MySQL et Sources MySQL. Pour les questions concernant le moteur MySQL plutôt que les fonctions PHP, merci d'utiliser le forum MySQL.
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 09/02/2010, 14h59   #1
Nouveau Membre du Club
 
Inscription : décembre 2003
Messages : 379
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 379
Points : 39
Points : 39
Par défaut Problème encodage ISO-8859-1

Bonjour,

Voila j'espère que je post dans le bon forum...

Je vous explique mon problème: en fait je suis un peu perdue avec les encodages. J'essaye de faire en sorte que mon site soit totalement encodé en ISO-8859-1 (on verra plus tard pour passer à l'UTF8), mais il y a encore des problème...

Je travail sur EasyPHP en locale pour l'instant.

Par exemple, je remarque que quand j'ouvre phpmyadmin, il me met :
Citation:
Jeu de caractères pour MySQL: UTF-8 Unicode (utf8)
Interclassement pour la connexion MySQL: UTF8_general_ci
J'essaye de le changer en latin1_swedish_ci (comme ca l'est dans mes interclassements de mes tables (c'était par défaut)) et ca ne marche pas, il revient sur utf8_general_ci...

Pour coder en php, j'utilise notepad++.

J'ai donc aussi bien vérifié que tous mes fichiers soient Encodés en AINSI au format Windows.

Je suis un peu perdu la !


En fait, j'aimerai être sur que mon site est partout en ISO, quelqu'un peut-il m'aider à cela?

Grand merci .
benthebest est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2010, 15h27   #2
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
Les différents aspects des encodages dans Mysql sont expliqués ici :
http://dev.mysql.com/doc/refman/5.0/...-defaults.html
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2010, 15h37   #3
Nouveau Membre du Club
 
Inscription : décembre 2003
Messages : 379
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 379
Points : 39
Points : 39
Merci

oui j'ai bien appliqué la commande sql

dans la fenetre de phpmyadmin, mais c'est toujours en utf-8 ...
benthebest est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2010, 16h10   #4
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
La requête SET NAMES ne change que le paramètre de la connexion en cours, c'est à dire que ce n'est valable que jusqu'à la fin de la page PHP.
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2010, 16h12   #5
Nouveau Membre du Club
 
Inscription : décembre 2003
Messages : 379
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 379
Points : 39
Points : 39
Que dois-je changer alors si ce n'est pas SET NAMES ?
benthebest est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2010, 16h23   #6
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
Tu peux utiliser SET NAMES si tu le repetes à chaque fois que tu lances une connexion mysql.

Sinon je te renvois vers la documentation que je t'ai fournie :
Citation:
Avec le client mysql, il n'est pas nécessaire d'exécuter la commande SET NAMES à chaque démarrage. Vous pouvez ajouter l'option --default-character-set-name dans la ligne de commande de mysql, ou dans le fichier d'options. Par exemple, la ligne suivante est exécutée automatiquement à chaque démarrage de mysql :

[mysql]
default-character-set=koi8r
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2010, 17h30   #7
Nouveau Membre du Club
 
Inscription : décembre 2003
Messages : 379
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 379
Points : 39
Points : 39
Merci de ta réponse

Le problème dans cette doc est qu'ils parlent d'exécuter des commandes dos. Mais moi je suis vraiment pas trop caller en mysql et j'utilise d'ailleurs le simplissime (enfin presque!) phpmyadmin, par l'interface...

Moi je veux juste pouvoir changer l'interclassement pour la connexion mysql, de utf8 à latin1, par le biais de phpmyadmin... (comme je l'ai dis, plus c'est simple mieux c'est pour moi, car j'ai peur de faire de grosses bétises sinon !!)
benthebest est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2010, 20h28   #8
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
Tu ne peux pas le faire dans phpmyadmin : les paramètres sont dans le fichier de config de mysql (my.cnf)

Mais tu parles d'un serveur de production ? d'un hebergeur ? de ton serveur de developpement ?
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2010, 23h29   #9
Nouveau Membre du Club
 
Inscription : décembre 2003
Messages : 379
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 379
Points : 39
Points : 39
non non je suis pour le moment en locale...
benthebest est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2010, 23h32   #10
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
Je dirais alors que ta démarche n'est pas utile : sur ton hebergeur tu seras surement dans l'impossiblité de configurer mysql et devras donc utiliser SET NAMES si la connexion est par défaut en UTF8.
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/02/2010, 01h36   #11
Nouveau Membre du Club
 
Inscription : décembre 2003
Messages : 379
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 379
Points : 39
Points : 39
Meme si je compte prendre un dedié?
benthebest est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/02/2010, 07h08   #12
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
Si tu n'aimes pas lire les docs et faire des configurations, ne prends pas un serveur dédié.
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/02/2010, 12h58   #13
Nouveau Membre du Club
 
Inscription : décembre 2003
Messages : 379
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 379
Points : 39
Points : 39
Je n'ai pas le choix car l'architecture de mon projet est complexe, je n'utilise pas simplement php et mysql mais j'utilise aussi java avec un serveur tomcat couplé a apache... et je doute de pouvoir faire ceci sur un serveur mutualisé
benthebest est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/02/2010, 13h27   #14
Nouveau Membre du Club
 
Inscription : décembre 2003
Messages : 379
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 379
Points : 39
Points : 39
Bon ben j'ai fais ce que tu m'as dit, j'ai donc rajouté le character-set dans le fichier my.cnf. Voici à quoi ressemble ma section mysql :

Code :
1
2
3
4
5
6
 
[mysql]
no-auto-rehash
# Remove the next comment character if you are not familiar with SQL
#safe-updates
default-character-set=latin1
J'ai redemarré easyphp et lorsque je suis dans la page accueil de phpmyadmin et bien ca reste toujours
Citation:
Jeu de caractères pour MySQL: UTF-8 Unicode (utf8)
Quelqu'un a une explication?
benthebest 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 +1. Il est actuellement 21h32.


 
 
 
 
Partenaires

Hébergement Web