Php, MySQL 4.1 et UTF-8

Le
Vincent Derrien
Bonjour,

Je travaille actuellement sur un projet basé sur php et MySQL 4.1 du
côté serveur et C++ et QT du côté client. Un script Php va chercher des
informations sur internet et les stockent dans la base de données MySQL.
Le client, par la suite, va chercher ses informations et les affichent à
l'écran dans une interface QT codée en C++.

Les informations reçues d'internet sont en ISO-8859-1, en UTF8 ou en
ASCII. Dans le cas du ISO-8859-1, je les convertis en UTF8 avec la
fonction utf8_encode() avant de les insérer dans la base de données.

Sous MySQL, la requête suivante indique qu'il est en standard en UTF8 :
mysql> SHOW VARIABLES LIKE 'character_set_system';
| character_set_system | utf8 |

Mais, en revanche, dans PhpMyAdmin, il indique pour les champs
"latin1_swedish_ci" et les accents ne sont pas affichés correctement
(dans Firefox ou IE sous Windows 2000 ou sous Safari sous MacOS X).

Comment être sûr que mes données sont, de bout en bout, stockées en UTF8
dans ma base ? Est-ce que je dois bien convertir en UTF8 dans mon script
Php ou l'insertion le fait-il directement ?

Merci d'avance pour vos réponses.

Cordialement,

  • Partager ce contenu :
Vos réponses
Trier par : date / pertinence
DJiK
Le #712825
Mais, en revanche, dans PhpMyAdmin, il indique pour les champs
"latin1_swedish_ci" et les accents ne sont pas affichés correctement
(dans Firefox ou IE sous Windows 2000 ou sous Safari sous MacOS X).



Le serveur Apache doit être en "autre chose", sûrement ISO-1.

Ça se passe dans le fichier httpd.conf, quelque chose comme default charset.
C'est vrai que si tout est en UTF 8 ce sera + simple. :-)

--
DJiK

Vincent Derrien
Le #722403

Mais, en revanche, dans PhpMyAdmin, il indique pour les champs
"latin1_swedish_ci" et les accents ne sont pas affichés correctement
(dans Firefox ou IE sous Windows 2000 ou sous Safari sous MacOS X).




Le serveur Apache doit être en "autre chose", sûrement ISO-1.

Ça se passe dans le fichier httpd.conf, quelque chose comme default
charset.
C'est vrai que si tout est en UTF 8 ce sera + simple. :-)



Je vais tenter ça, merci.


Poster une réponse
Anonyme