Hallo!
Habe ein riesen Problem. Habe meine kompletten Sachen von Webhosting auf nen Root gelegt. Der vorherige Server war MySQL4 & PHP5, alle Datenbanken als latin1 angelegt und beschrieben.
Der neue Server ist aber straight utf-8 mit MySQL5 und PHP5.
Bin erstmal hin, in meiner Unwissenheit, und habe einfach alles (natürlich mit MySQL40 Kompatibilität) exportiert und importiert und mich dann gewundert, dass die Umlaute zerhackt wurden. Nun habe ich folgendes getan:
Nun ist es schon besser, ändert aber nichts an den Binärdaten oder? Ist das evt, das Problem? Muss ich da jetzt alles (200 MB Datenbank) Mit iconv durchgehen, behebt das das Problem?
Für jegliche Hilfe wäre ich sehr dankbar.
edit: ok, vielleicht hätte es in die Datenbank-Bereiche besser gepasst, Sorry :\
Habe ein riesen Problem. Habe meine kompletten Sachen von Webhosting auf nen Root gelegt. Der vorherige Server war MySQL4 & PHP5, alle Datenbanken als latin1 angelegt und beschrieben.
Der neue Server ist aber straight utf-8 mit MySQL5 und PHP5.
Bin erstmal hin, in meiner Unwissenheit, und habe einfach alles (natürlich mit MySQL40 Kompatibilität) exportiert und importiert und mich dann gewundert, dass die Umlaute zerhackt wurden. Nun habe ich folgendes getan:
PHP:
mysql_connect('localhost', 'root', '');
mysql_query("ALTER DATABASE `$dbname` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci");
$res = mysql_query("SHOW TABLES FROM `$dbname`");
while($row = mysql_fetch_row($res)) {
$query = "ALTER TABLE {$dbname}.`{$row[0]}` CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci";
mysql_query($query);
$query = "ALTER TABLE {$dbname}.`{$row[0]}` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci";
mysql_query($query);
}
Nun ist es schon besser, ändert aber nichts an den Binärdaten oder? Ist das evt, das Problem? Muss ich da jetzt alles (200 MB Datenbank) Mit iconv durchgehen, behebt das das Problem?
Für jegliche Hilfe wäre ich sehr dankbar.
edit: ok, vielleicht hätte es in die Datenbank-Bereiche besser gepasst, Sorry :\