Bonjour,
Je suis en train de me battre avec l'actualisation d'une GROSSE application codée en PHP et MySQL.
Les fichiers - tels que je les ai récupérés - étaient dans cet état :
DB et tables de la DB : latin1_swedish
Code HTML meta charset iso-8859-1
Malgré cette horreur, les accents apparaissent à l'écran tout à fait normalement - le comment m'échappe un peu - mais la DB (dump SQL) est truffée de symboles obscurs tels que : ?†, ?©, ?® ...
Toutefois, j'essaie d'avoir quelque chose de cohérent : soit des codes HTML (é , à, ...) ou les graphèmes tels quels (é, à, ...).
J'ai donc :
- transformé la DB - général - en UTF-8
- transformé chaque table en UTF-8
- mis des meta charset utf-8 dans tous mes codes HTML
- converti tout mon dump en faisant des search-replace sur tous les caractères farfelus pour les transformer en codes HTML
- et tenté ceci :
Le set_charset("utf8") stocke alors les accents en clair (é, à, è...) mais par contre... Dans le navigateur, le contenu est tout pété :
15:50:10 test avec des accents héhé
(quand je commente la ligne $link->set_charset("utf8"); tout revient à la normale dans le navigateur, mais la base de données accueille des caractères inopportuns : désiré
Du coup, je suis perplexe...
Auriez-vous des idées pour m'aider à solutionner ce problème?
D'avance, merci pour votre aide.
Modifié par Reka (10 Jun 2016 - 16:46)
Je suis en train de me battre avec l'actualisation d'une GROSSE application codée en PHP et MySQL.
Les fichiers - tels que je les ai récupérés - étaient dans cet état :
DB et tables de la DB : latin1_swedish
Code HTML meta charset iso-8859-1
Malgré cette horreur, les accents apparaissent à l'écran tout à fait normalement - le comment m'échappe un peu - mais la DB (dump SQL) est truffée de symboles obscurs tels que : ?†, ?©, ?® ...
Toutefois, j'essaie d'avoir quelque chose de cohérent : soit des codes HTML (é , à, ...) ou les graphèmes tels quels (é, à, ...).
J'ai donc :
- transformé la DB - général - en UTF-8
- transformé chaque table en UTF-8
- mis des meta charset utf-8 dans tous mes codes HTML
- converti tout mon dump en faisant des search-replace sur tous les caractères farfelus pour les transformer en codes HTML
- et tenté ceci :
$link=mysqli_connect($server, $login, $password);
$link->set_charset("utf8");
Le set_charset("utf8") stocke alors les accents en clair (é, à, è...) mais par contre... Dans le navigateur, le contenu est tout pété :
15:50:10 test avec des accents héhé
(quand je commente la ligne $link->set_charset("utf8"); tout revient à la normale dans le navigateur, mais la base de données accueille des caractères inopportuns : désiré
Du coup, je suis perplexe...
Auriez-vous des idées pour m'aider à solutionner ce problème?
D'avance, merci pour votre aide.
Modifié par Reka (10 Jun 2016 - 16:46)