Wenn dies Ihr erster Besuch hier ist,
lesen Sie bitte zuerst die Hilfe - Häufig gestellte Fragen
durch. Sie müssen sich vermutlich registrieren,
bevor Sie Beiträge verfassen können. Klicken Sie oben auf 'Registrieren', um den Registrierungsprozess zu
starten. Sie können auch jetzt schon Beiträge lesen. Suchen Sie sich einfach das Forum aus, das Sie am meisten
interessiert.
Damit sind die beiden Strings eben NICHT gleich! Der Datentyp binary ist das Äquivalent zu CHAR, besitzt jedoch keinen Zeichensatz und keine Kollation. Ein binary(50) ist also IMMER 50 Byte (nicht Zeichen) lang, ein MD5-Hash dagegen 32 Zeichen. Ein binärer Vergleich der beiden wird IMMER False sein, auch wenn sie bei der Ausgabe mit Echo gleich aussehen!
Du solltest den Datentyp für den MD5-Hash etwas passender wählen, also z.B. VARCHAR(32), oder eine Typkonvertierung vornehmen, oder wenigstens vor dem Vergleich die zusätzlichen "Leerbytes" abschneiden. (z.B. mit trim())
Gruß Falk
Edit: Vom Thread wieder mal nur die erste Seite gelesen, meine Antwort ist also schon etwas "überholt"
Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.
Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!
Comment