PHP - Datenbank und Umlaute probleme

Status
Nicht offen für weitere Antworten.
B

bygones

Gast
HI,

ich hoffe ein PHPler kann mir helfen:

ich versuche ein login mit einer Datenbank zu realisieren.

mein php script schaut in etwa so aus
Code:
$login = $_POST['login'];
$password = $_POST['passwort'];
$query = "SELECT * FROM xyz WHERE benutzer = '$login' AND passwort='$password'";
$result = mysql_query($query);
if(mysql_num_rows($result) > 0) {

In der Datenbank gibt es den eintrag

Mario.Müllermann

wenn ich mich nun mit Mario.Müllermann einlogge, so bekomm ich bei mysql_num_rows($result) 0.

lass ich mir $query ausgeben und paste dies in phpMyAdmin erhalte ich den entsprechenden eintrag zurück.

mach ich aus Mario.Müllermann -> Mario.Muellermann so klappt alles wunderbar, d.h. irgendwo muss das mit dem ü probleme geben.

Nur ich weiss einfach nicht wo und wie ?
ich habe auch schon mysql_escape_string probiert, was aber nix änderte.

Hat jemand eine Idee ?

danke euch

PS: aus einem anderen forum kam auch der Vorschlag
Code:
mysql_query("SET NAMES 'utf8'");
mysql_query("SET CHARACTER SET 'utf8'");
vorher zu schreiben, aber das half auch nicht... die Umlaute werden ja korrekt umgesetzt scheinbar in MySQL - phpMyAdmin gibt ja was zurück...

*verzweifelt*
 
M

maki

Gast
Ich hab 0 Ahnung von PHP, aber sollte das ü nicht als & vom Browser zum Server geschickt werden?
 
G

Guest

Gast
Wenn du einen Wert mit einem Umlaut in deine DB speicherst, ist dann der Umlaut in der DB korrekt? Also nicht wenn du diesen wieder mittels PHP ausgibst, sondern wenn du direkt by phpMyAdmin nachsiehst
 

AlArenal

Top Contributor
Anonymous hat gesagt.:
Also nicht wenn du diesen wieder mittels PHP ausgibst, sondern wenn du direkt by phpMyAdmin nachsiehst

Gibt phpMyAdmin den Inhalt etwa nicht mittels PHP aus? ;)

Korrekterweise müsste er das über den Kommandozeilen-Client prüfen, aber damit ist es bei Shared Hosting natürlich ürre...
 
M

maki

Gast
Mein Tip ist leider nciht mehr lesbar, sollte heisse: ü wird zu & u u m l ;
 
G

Guest

Gast
AlArenal hat gesagt.:
Anonymous hat gesagt.:
Also nicht wenn du diesen wieder mittels PHP ausgibst, sondern wenn du direkt by phpMyAdmin nachsiehst

Gibt phpMyAdmin den Inhalt etwa nicht mittels PHP aus? ;)

Korrekterweise müsste er das über den Kommandozeilen-Client prüfen, aber damit ist es bei Shared Hosting natürlich ürre...

Nein, scheinbar nicht. phpMyAdmin hat neben dem was in reinem php möglich ist noch andere Features. Wenn du dich bei phpMyAdmin mal als root einloggst wirst du das sehen. Außerdem hatte ich schonmal ein ähnliches Problem, nur lag es da daran wie cihd die Daten gespeichert habe.

Normalerweise brauch man nichtmal den UTF-Blub im Source anzugeben, vorrausgesetzt das Tabellenfeld hat die richtige Konvertierungseinstellung
 

AlArenal

Top Contributor
Ich kenne und nutze phpMyAdmin seit vielen Jahren. Da es aber komplett in PHP entwickelt ist, kann es schwerlich etwas anderes als PHP-Ausgabefunktionen zur Ausgabe nutzen. Vielleicht solltest du besser dort mal einen Blick in die Sourcen werfen?
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen

Neue Themen


Oben