• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

Sonderzeichen aus DB

wumble

New member
Hallo, hab folgendes Problem:
Ich schreibe meine Seite grad zu XHTML 1.0 transitional um.
Auf dieser Seite lese ich viel Text aus einer Datenbank aus. Zuvor als die Seite noch im HTML Format war, wurde auch alles richtig angezeigt, aber nun werden die Sonderzeichen aus der DB falsch angezeigt. Ich habe schon google bemüht und entdeckt das man am besten utf-8 zur zeichekoderierung verwendet, hab das nun auch so in der XML Deklaration:
PHP:
<?php echo '<?xml version="1.0" encoding="UTF-8"?>'; ?>

aber die Daten aus der DB kommen da glaub ich immer noch falsch an weshalb die Zeichen nicht richtig dargestellt werden, hab zwar gelesen das man auch die DB dementsprechend umstellen muss, hab aber keine Ahnung wie und wo.
Vielleicht gibt es auch noch eine andere Möglichkeit die Daten einfach wie zuvor in er HTML Variante auszulesen, wäre über Hilfe sehr dankbar.
 
hallo,

was du dort schreibst, ist ja der xml-Prolog, der auch weggelassen werden kann, es gibt unterschiedliche Meinungen dazu.
dieser Prolog bringt Schwierigkeiten mit dem IE6, oder sagen wir mal so: er versetzt den IE6 in den
Quirks-Modus, was man nicht unbedingt beabsichtigt.

Probier doch einfach mal, ihn wegzulassen.

Kann natürlich sein, dass die Anzeige der Zeichen dann immer noch nicht stimmt, die Frage wäre:
wie sind sie in der DB gespeichert??

planet4.
 
danke für die Antwort.
Das weglassen des xml Prologs hat aber nichts verändert, dennoch danke für den Hinweis. Gibt es denn auch irgendwelche Vorteile wenn man ihn schreibt?
Aber zum Hauptproblem, wie sind die Daten in der DB gespeichert? :confused:
Gute Frage, hatte mir darum bisher noch überhaubt keine Sorgen gemacht, hab sie halt einfach reingeschrieben über PHP Skripte.
Aber ein kleines Beispiel:
das Wort "Hälfte"
ist gepeichert als "Hälfte"
und "Überlegenes"
ist gespeichert als "überlegenes"
 
Thread kann gelöscht werden :grin:
hab nochmal etwas rumgesucht.
In der DB hab ich nur die Spracheinstellung für phpmyadmin gefunden, aber musste einfach noch folgendes schreiben:
Code:
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />

hatte in diesem Tag das charset vergessen :eek:
naja, wenn man die ganze Zeit darüber hängt und alle Möglichkeiten durchgeht kommt man auf die verrücktesten Vermutungen warum es denn nicht klappt, dabei war es so einfach. :grin:

Wünsche dann noch einen angenehmen Abend und habe hoffentlich nicht gestört :D
 
Eigentlich seltsam.
Das charset=UTF-8 braucht man bei einer Datei, welche den xml-Prolog in UTF-8 hat, gar nicht angeben.
Sogar ohne den xml-Prolog und ohne Meta-Angabe ist ein Dokument automatisch ein UTF-8-Dokument.
 
Zurück
Oben