<?php
/*------------------------------*/
/*
Titre : Code pour convertir dans un format Latin ou UTF8
Auteur : nixi54
Date édition : 29 Jan 2008
*/
/*------------------------------*/
die("faite un backup de votre database MySQL et enlever cette ligne");
// format de départ:
$convert_from = 'latin1_swedish_ci';
// Le format d'arrivée:
$convert_to = 'utf8_general_ci';
// Initialiser les caracteres dans le bon format:
$character_set= 'utf8';
$show_alter_table = true;
$show_alter_field = true;
// DB logs information
$username = 'user';
$password = 'pass';
$database = 'base';
$host = 'localhost';
echo '<pre>';
// ALTER TABLE 'compte' DEFAULT CHARACTER SET utf8
if ($show_alter_table) {
echo("ALTER TABLE '$table' DEFAULT CHARACTER SET $character_set;\r\n");
}
if ($row['Collation']!=$convert_from)
continue;
// le champ peut-etre null?
if ($row['Null']=='YES') {
$nullable = ' NULL ';
} else {
$nullable = ' NOT NULL';
}
// est-ce que les champs Default sont nul, une chaine, ou rien?
if ($row['Default']==NULL) {
$default = " DEFAULT NULL";
} else if ($row['Default']!='') {
"'";
} else {
$default = '';
}
// ALTER TABLE 'compte' CHANGE 'email' 'email' VARCHAR( 50 ) CHARACTER SET utf8
// COLLATE utf8_general_ci NULL DEFAULT NULL
if ($show_alter_field) {
echo
"ALTER TABLE '$table' CHANGE '$field' '$field' $row[Type] CHARACTER SET" .
" $character_set COLLATE $convert_to $nullable $default; \r\n";
}
}
}
?>