Die Basis von UTF8
Um eine Internetseite auf UTF8 umstellen, damit jegliches Zeichen dargestellt werden kann, ist es notwendig zu Beginn des Quellcodes fogenden php-Code einzubetten:< ?php
header("Content-Type: text/html; charset=utf-8");
?>
Damit ist der eigentliche Schritt getan. Die Seite wird nun in UTF8 ausgegeben. Damit es zwischen der Seite und dem Browser nicht zu Missverständnissen kommt, ist es notwendig per Meta-Tag mitzuteilen um welchem Charset es sich handelt.
< meta http-equiv="Content-Type" content="text/html; charset=UTF-8" / >
Das Internet besteht natürlich zu einem Großteil aus mehr als statischen Seiten. Interaktionen mit dem User machen Datenbanken zu einem nützlichen Begleiter. Die meistverwendete Datenbank ist weltweit MySQL, denn es ist kostenlos, einfach zu handhaben und kann schon recht große Datenmengen aufmehmen.
Auch Datenbanken arbeiten in verschiedenen Charsets, damit alle ihre Zeichen in Datenbanken schreiben können. Während man in Europa lange Zeit Latin-1 verwendete, so sollte sich das spätestens jetzt ändern.
Datenbankmigration
Die Datenbank stellt man per phpMyAdmin, Konsole oder MySQL-Querie-Browser mit folgendem Befehl um:
ALTER DATABASE `database` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
Die Tabelle wird mit folgendem Befehl umgewandelt:
ALTER TABLE `table` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
Auch die einzelnen Felder der Tabelle müssen umgestellt werden:
ALTER TABLE `table` CHANGE `field` VARCHAR( 100 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL;
Datenbankverbindungen
Zum Speichern der Daten per INSERT, REPLACE oder UPDATE in die Datenbank muß vor jedem Schreibvorgang der SET_NAMES gesendet werden.
mysql_query("SET NAMES 'UTF8'",CONNECTION);
Auch zum Auslesen per SELECT ist es notwendig der Datenkbank etwas mitzuteilen vor der eigentlichen Abfrage, damit klar ist welcher Charset erwartet wird:
mysql_set_charset("utf8");
Ohne diese Anweisung kommt es zu Problemen mit Umlauten. Diese kann man jedoch mit einem utf8_encode schnell beheben. Zeichen wie das Eurosymbol €, chinesische oder russische Zeichen können ohne jedoch gar nicht dargestellt werden.
Der Artikel wurde am 17.12.2010 von Stefan Kremz + veröffentlicht.
Seite, Beginn, Zeichen, Daten, Browser, Datenbank, Befehl, Europa, Code, Datenbanken, Basis, Felder, Abfrage, Tabelle, Charset, Anweisung, Auslesen, Begleiter, Charsets, Datenbankmigration, Datenbankverbindungen, Datenkbank, Datenmengen, Eurosymbol, Interaktionen
Ähnliche Artikel in diesem Blog
Auswege aus Hotlinking und Trafficklau vom 15.11.2008
Alexa Traffic Rank vom 27.01.2009
DELAYED und IGNORE bei Logeinträgen in die Datenbank vom 21.01.2010
Wieviel Datenschutz muss sein? vom 09.10.2011
Gefällt mir nicht! Button bei Facebook vom 31.10.2011
Auswege aus Hotlinking und Trafficklau vom 15.11.2008
Alexa Traffic Rank vom 27.01.2009
DELAYED und IGNORE bei Logeinträgen in die Datenbank vom 21.01.2010
Wieviel Datenschutz muss sein? vom 09.10.2011
Gefällt mir nicht! Button bei Facebook vom 31.10.2011

