RaphAstronome

jeudi, 20 août 2009

Lien entre PHP et MySQL en UTF8

Super mon dernier site est en UTF-8 ! Donc :

  • J'ai mes pages en UTF-8
  • J'ai déclaré le charset en UTF-8 dans les entêtes HTTP
  • Ma base de données est aussi en UTF-8

Je vais sur la page : super le site s'affiche bien par contre les données provenant de MySQL sont encore en ISO et forcement "ça fait tache".

En fait ce problème est assez bête : PHP et MySQL sont tout deux en UTF-8 mais par défaut le lien entre les deux est encore en latin1 et la chaine de caractères est donc traduit de l'UTF-8 en latin1 par MySQL.

Le problème est très facile à régler il suffit d'utiliser mysql_set_charset peu après s'être connecté à MySQL :

mysql_connect('host', 'user', 'pass');
mysql_select_db('database');
mysql_set_charset('utf8');

Cette instruction demande à MySQL d'utiliser UTF-8 et pas autre chose.

Bien sûr il est possible de l'adapter à un autre codage dont vous pouvez voir la liste avec "SHOW CHARACTER SET;".

mardi, 16 septembre 2008

3 corrections orthographique dont une mémorable

Pour commencer une correction que les habitants d'Avignon risquent de ne pas apprécier : avignon Pour info un salignon est un "Pain de sel obtenu par évaporation des eaux d'une source saline." (source Wiktionnaire)



Ensuite une caractéristique qui risque de gêner les joueurs de jeux vidéos : injouable



Et alors là je crois que je tient une correction automatique mémorable : corrector_lol_le_bouquet.png Remarquez les autres suggestions ! Et remarquez aussi que le mot qui est à l'origine de la correction est extrêmement courant.

mercredi, 2 juillet 2008

Corrections foireuses : 2e partie

subir sunbird C'est vrai que Sunbird est chiant à t'avertir lorsque tu as un rendez vous chez le dentiste que tu préférerais oublier.

pied dans l'oeil Sur un site d'astronomie ça peut donner : "Même si le phénomène est observable à l'orteil nu, une paire de jumelles ou une petite lunette permet de mieux apprécier l'événement.".

jeudi, 22 mai 2008

Quand les correcteurs orthographique trollent

firefoire

wiispy

Don't feed the troll

samedi, 23 février 2008

Redessiner la page, en JavaScript

Lors le développement d'un gros projet de site j'ai eu besoin de modifier la propriété innerHTML, de multiples div, td et autre.

Le problème est que dans certains cas, avec Opera, seule une partie de l'écran est redessinée ce qui peut poser des problèmes à l'affichage, qui disparaissent des que l'on fait défiler la page.

Pour forcer a redessiner tout l'écran il suffit de faire défiler la page une fois les modifications effectués.

function cleanPage() {
	// Force le réaffichage de tout l'ensemble (évite bugs d'affichage)
	window.scrollBy(0,1);
	window.scrollBy(0,-1);
}

Bien sur ça fait vibrer la page pour les animations c'est pas terrible mais pour l'affichage d'un panneau de sélection c'est tolérable. De plus la page doit être assez grande pour pourvoir la faire défiler.

- page 2 de 3 -