[ORACLE - PHP] Sonderzeichen

Nana wer wird denn da so schnell aufgeben. Das mit der Codiererei ist ein frustrierendes Thema - ja.

Das ist ok

PHP:
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">

Das hast Du schon gemacht - sehe ich gerade. Wichtig.

Du schickst einen Header vor der PHP Ausgabe wie folgt:
PHP:
header("Content-Type: text/html; charset=utf-8");

dieser Header sollte zentral in jeder PHP Ausgabeseite, egal in welcher, verwendet werden.

Dann gibt es noch das Thema, wie die DB die eingehenden Daten
a) verarbeitet bevor sie die DB erreichen
b) speichert
c) zurückliefert

Zu a) Eine DB ist zum Beispiel codiert im Format XYZ, der Code der zur DB connected ist auf dem Server so eingestellt (eine Art Treiber) dass eingehende Verbindungen nur im Format ABC angenommen werden, und Du verwendest DEF. Dabei entstehen subversive Codierungsprobleme. Das bedeutet hier sollte Einigkeit herrschen, das gilt auch für das Format der erstellten Datenbank auf dem Server.

b) Der Server selbst speichert die DB nochmal in einem bestimmten Format

c) Du bekommst zurück das Format des Treibers, der das Format von der DB vorher konvertiert. Das heisst noch lange nicht dass dabei UTF-8 herauskommt.

In PostgreSQL, einem Verwandten von Oracle, kann ich diese Effekte in einer Konfigurationsdatei einstellen. Also einmal das Format, wie die Daten gespeichert werden, dann das Format, welches von "außen" angenommen werden soll. Sowas gibt es sicherlich auch in Oracle.
 
Hi,

mein Problem ist, dass ich auf den Datenbanksever nur sehr eingerschänkt administrativen Zugriff habe. Jeder Versuch mehr details über das Setup zu erfahren kostet mich sehr viel Zeit. Daher werde ich wohl bei ISO bleiben. Technisch tut es das für mich und reicht in Bezug auf die vorhandenen Zeichen auch aus. Hier muss ich nun nur noch gettext dazu überreden auf einem utf-8 Server (Suse) ISO codierte Werte auszugeben bzw. ich muss diese erst mal so auf die platte bekommen. Das Problem ist für mich aber deutlich greifbarer als das Problem mit Oracle & PHP.

Danke für deine Hilfe!
 
Hi,

bei einem Projekt das aktuell schon mehr als 50.000 Zeilen Code hat wäre es etwas viel Arbeit das einzubauen zumal ich dafür nicht meine generische Datenausgabeklasse hätte nehmen können, da die Codierung ja nach verwendeter Tabelle unterschiedlich war... Da ich jetzt auch mein gettext Problem gelöst habe werde ich auf ISO-8859-1 bleiben und das Thema utf-8 unter Erfahrungen die man man haben sollte ablegen :)

Danke für eure Hilfe!
 

Neue Beiträge

Zurück