Kommunikation zwischen Browser und Datenbank, mit Sonderzeichen Umlauten Abstand usw.

jackob100

Mitglied
PHP/mysql

<meta http-equiv="content-type" content="text/html;charset=ISO-8859-1">
DB: utf8_unicode_ci

Hallo

Wer kennt dieses Problem und wie umgeht ihr es?

In meiner Datenbank sind die Daten wie folgt gespeichert.
Beispiel 'xyz ämÄ -._Éè'

Ich möchte nun genau nach diesem String suchen und in genau so wieder im Browser ausgeben: 'xyz ämÄ -._Éè'

Ich übergebe meine Anfragen per $_GET, somit kann ich meine Abfragen auch direkt über die Adresszeile eingeben: 'xyz ämÄ -._Éè'

Per Link sieht die Adresszeile nun aber so aus:
'xyz%20%E4m%C4%20-._%C9%E8' und somit giebt es kein Ergebnis
 
Du musst erst beides auf einen Nenner bringen, also dieselbe Zeichenkodierung verwenden. Hierzu kannst du die utf8_encode()-Funktion verwenden, die eine ISO-8859-1-Zeichenkette zu UTF-8 konvertiert.
 
Habe mich etwas zu früh gefreut!

Ich habe folgende Einstellungen:

Dokumente
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<meta http-equiv="content-type" content="text/html;charset=UTF-8">

Mysql Tabellen und Spalten
utf8_unicode_ci


Nun gebe ich folgenes in die Adresszeile ein: Vésenazä

Ergebniss im

Firefox
Die Adresszeile wird zu: V%E9senaz%E4
Die Spalte mit dem Inhalt Vésenazä wurde gefunden.
Die Ausgabe im Broswer V?senaz?

IE
Die Adresszeile bleibt Vésenazä
Die Spalte mit dem Inhalt Vésenazä wurde nicht gefunden.
Die Ausgabe im Broswer Vésenazä

Safari
Die Adresszeile bleibt Vésenazä
Die Spalte mit dem Inhalt Vésenazä wurde nicht gefunden.
Die Ausgabe im Broswer Vésenazä

Was ist hier los?
 
Zuletzt bearbeitet:
Zwei Fragen: Sind die Daten denn tatsächlich UTF-8 kodiert? Wird das Dokument tatsächlich als UTF-8-kodiert ausgeliefert („Content-Type“-Feldwert im HTTP-Header, nicht im Dokument selbst)?
 
Morgen Gumbo

Sind die Daten denn tatsächlich UTF-8 kodiert?

Ja ich habe alle Dateien mit dem Editor geöffnet und als UTF-8 kodiert abgespeichert.
Die Dateien werden nachher binär und nicht ASCII auf den Server übertragen.


Wird das Dokument tatsächlich als UTF-8-kodiert ausgeliefert („Content-Type“-Feldwert im HTTP-Header, nicht im Dokument selbst)?

Was meinst du damit? nicht im Dokument selbst:confused:
 
Mit FF 2.0 geht das relativ einfach.

Die Seite aufrufen, laden lassen und rechte Maustaste irgendwo auf der Seite und auf "View Page Info" bzw. "Seiteninformation" oder so ähnlich.

Dort findest du auch die ausgelieferte Zeichenkodierung.
 
Zurück