Problem mit Umlauten bei einer SQL Abfrage, hat jemand eine Idee?

... komplette Frage anzeigen

3 Antworten

Deine PHP-Datei ist wie abgespeichert (Zeichensatz)?

Deine HTML-Seite lautet auf welchen Zeichensatz (Meta-Tag usw.)?

Deine Datenbankverbindung lautet auf welchem Zeichensatz (set names)?

Die Datensätze sind korrekt in der DB drin, wurden also wirklich als utf8 angelegt und übergeben (siehe beispielsweise mysql-kommandozeile)?

Die Like-Suche ist im übrigen KEINE phonetische Suche. Wenn in der Datenbank "müller" steht, wird die Suche nach "mueller" niemals ein Ergebnis liefern.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von MoechteAWissen
30.12.2015, 11:25

Vielen Dank für deine Antwort!

Gleich vorab, ich bin blutiger Anfänger auf dem Gebiet. Um
genau zu sein, reden wir von meinem 1. Script. Ich hoffe, Du bist nachsichtig
mit mir….

Deine PHP-Datei ist wie abgespeichert (Zeichensatz)?

JA

Deine HTML-Seite lautet auf welchen Zeichensatz
(Meta-Tag usw.)?

<meta charset="utf-8">

Zusätzlich binde ich mit PHP
folgendes ein:

header("Content-Type: text/html; charset=utf-8"); 

Die Datensätze sind korrekt in der DB drin,
wurden also wirklich als utf8 angelegt und übergeben (siehe beispielsweise mysql-kommandozeile)?

Verstehe nicht genau was Du damit meinst. Also die Umlaute werden korrekt in der DB abgespeichert. Ich musste diesen Befehl  dafür einfügen:

mysql_query("SET NAMES 'utf8'");

Die Like-Suche ist im übrigen
KEINE phonetische Suche. Wenn in der Datenbank "müller" steht, wird die Suche nach "mueller" niemals ein Ergebnis liefern.

Und wie löse ich dieses Problemchen? ;-)

0

Versuch mal die Variable String umzuändern:

$string = utf8_encode($string);
Und dann mach die Abfrage nochmal
Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von MoechteAWissen
30.12.2015, 10:02

bringt leider nichts 

0

Müller, Mueller, vielleicht auch Miller, Möller, ... nicht so trivial. google mal nach levenshtein

Antwort bewerten Vielen Dank für Deine Bewertung

Was möchtest Du wissen?