Outils pour utilisateurs

Outils du site


tic:utf8

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
tic:utf8 [2016/08/12 13:08] blooptic:utf8 [2016/08/12 13:15] (Version actuelle) bloop
Ligne 2: Ligne 2:
 1/- Si on a la possibilité d’avoir accès au fichier de configuration Apache httpd.conf, rajouter en fin de fichier :\\ 1/- Si on a la possibilité d’avoir accès au fichier de configuration Apache httpd.conf, rajouter en fin de fichier :\\
 ''AddDefaultCharset UTF-8''\\ ''AddDefaultCharset UTF-8''\\
-//(S’il existe une ligne ''AddDefaultCharset ISO-8859-1'', la commenter)// +//(S’il existe une ligne ''AddDefaultCharset ISO-8859-1'', la commenter)//\\ 
-Ce réglage permettra à Apache d’envoyer les entêtes avec l’encodage UTF-8 pour les fichiers PHP et les fichiers HTML+Ce réglage permettra à Apache d’envoyer les entêtes avec l’encodage UTF-8 pour les fichiers PHP et les fichiers HTML.
  
-2/- Si on a pas accès à ce fichier, modifier le fichier de configuration php.ini en décommentant la ligne : +2/- Si on a pas accès à ce fichier, modifier le fichier de configuration php.ini en décommentant la ligne :\\ 
-default_charset="utf-8" +''default_charset="utf-8"''\\ 
-Rajouter dans chaque fichier HTML le type d’encodage : +Rajouter dans chaque fichier HTML le type d’encodage :\\ 
-<meta http-equiv="Content-type" content="text/html; charset=utf-8" />+''<meta http-equiv="Content-type" content="text/html; charset=utf-8" />''
  
-3/- Si on a pas accès au fichier de configuration php.ini, créer ou modifier le fichier .htaccess, situé à la racine du projet, afin d’y insérer une instruction : +3/- Si on a pas accès au fichier de configuration php.ini, créer ou modifier le fichier .htaccess, situé à la racine du projet, afin d’y insérer une instruction :\\ 
-php_flag default_charset utf-8 +''php_flag default_charset utf-8''\\ 
-Rajouter dans chaque fichier HTML le type d’encodage : +Rajouter dans chaque fichier HTML le type d’encodage :\\ 
-<meta http-equiv="Content-type" content="text/html; charset=utf-8" />+''<meta http-equiv="Content-type" content="text/html; charset=utf-8" />''
  
-4/- Enfin, ultime solution si les 3 précédentes ont échouées, configurer l’entête de chaque page : +4/- Enfin, ultime solution si les 3 précédentes ont échouées, configurer l’entête de chaque page :\\ 
-PHP : header ('Content-type:text/html; charset=utf-8'); +PHP : ''header ('Content-type:text/html; charset=utf-8');''\\ 
-HTML : <meta http-equiv="Content-type" content="text/html; charset=utf-8" />+HTML : ''<meta http-equiv="Content-type" content="text/html; charset=utf-8" />''
  
-ATTENTION à n’utiliser qu’une seule des 4 solutions ci-dessus car elles se substituent les unes aux autres avec certaines priorités. Il devient donc ensuite difficile de savoir laquelle impose l’encodage.+//ATTENTION à n’utiliser qu’une seule des 4 solutions ci-dessus car elles se substituent les unes aux autres avec certaines priorités. Il devient donc ensuite difficile de savoir laquelle impose l’encodage.//
  
-Encoder les fichiers PHP existant :+Encoder les fichiers PHP existant :\\
 Placer le fichier "utf8.php" (ci-joint) dans chaque dossier contenant des fichier PHP à convertir et l’exécuter depuis le navigateur. Placer le fichier "utf8.php" (ci-joint) dans chaque dossier contenant des fichier PHP à convertir et l’exécuter depuis le navigateur.
  
-Encoder les fichiers HTML :+Encoder les fichiers HTML :\\
 Ouvrir chaque fichier dans un éditeur du type Notepad++ et le convertir en "UTF-8 (sans BOM)". Ouvrir chaque fichier dans un éditeur du type Notepad++ et le convertir en "UTF-8 (sans BOM)".
  
-Encoder le base de données : +Encoder le base de données :\\ 
-Sur chaque table exécuter la commande suivante : +Sur chaque table exécuter la commande suivante :\\ 
-ALTER TABLE `ma_table` CONVERT TO CHARACTER SET utf8+''ALTER TABLE `ma_table` CONVERT TO CHARACTER SET utf8''
  
-Spécifier l’encodage dans lequel sont encodées les données envoyées via une requête : +Spécifier l’encodage dans lequel sont encodées les données envoyées via une requête :\\ 
-Rajouter juste après le "mysql_connect" la commande : +Rajouter juste après le "mysql_connect" la commande :\\ 
-mysql_set_charset ('UTF8');+''mysql_set_charset ('UTF8');''
  
-Si on utilise PDO, il suffit de passer un quatrième argument à son constructeur comme ceci : +Si on utilise PDO, il suffit de passer un quatrième argument à son constructeur comme ceci :\\ 
-$db = new PDO ('mysql:host=localhost;dbname=tests', 'root', '', array (PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES \'UTF8\''));+<code>$db = new PDO ('mysql:host=localhost;dbname=tests', 'root', '', array (PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES \'UTF8\''));</code>
  
-Voici une astuce qui m’a permis de convertir une base SPIP complète en une seule fois. Seule contrainte, passer la commande de conversion sur un Linux : +Voici une astuce qui m’a permis de convertir une base SPIP complète en une seule fois. Seule contrainte, passer la commande de conversion sur un Linux :\\ 
-1/- Faire un dump de la base complète soit avec PhpMyAdmin soit par la ligne de commande suivante +1/- Faire un dump de la base complète soit avec PhpMyAdmin soit par la ligne de commande suivante\\ 
-mysqldump -u info -p --quote-names --set-charset  --default-character-set=latin1 spip > monDossier/spip-latin1.sql+<code>mysqldump -u info -p --quote-names --set-charset  --default-character-set=latin1 spip > monDossier/spip-latin1.sql</code>
  
-2/- Dans un terminal Linux convertir la BDD par la ligne de commande suivante +2/- Dans un terminal Linux convertir la BDD par la ligne de commande suivante\\ 
-cat monDossier/spip-latin1.sql |sed -e 's/latin1/utf8/g' > monDossier/spip-utf8.sql+<code>cat monDossier/spip-latin1.sql |sed -e 's/latin1/utf8/g' > monDossier/spip-utf8.sql</code>
  
-3/- Réintégrer la base convertie avec PhpMyAdmin où par la ligne de commande suivante +3/- Réintégrer la base convertie avec PhpMyAdmin où par la ligne de commande suivante\\ 
-mysql -u info -p spip < monDossier/spip-utf8.sql+<code>mysql -u info -p spip < monDossier/spip-utf8.sql</code>
  
  
tic/utf8.1471000130.txt.gz · Dernière modification : 2016/08/12 13:08 de bloop