PHP + MYSQL
PokerASS
- php
0 Tom0 Michael Weimar0 Vinzenz Mai
Hallo,
bin gerade dabei ein Problem zu überwältigen, die, die mich schon kennen, freuen sich wahrscheinlich wieder von mir was zu hören.
Damit man zugriff auf mein Homepage hat, benötigt man ein Benutzername und Passwort. Das ist alles toll und funktioniert auch, auf Basis einer MySQL Datenbank.
Nun möchte ich aber, dass wenn man das Formular ausfüllt mit Benurternamen, Passwort, EMail und etc. will ich eine Prüfung von vorneherein durchführen lassen, wo geprüft wird ob der Benutzername schon in der Datenbank vorhanden ist oder nicht. Falls ja, soll eine Fehlermeldung erscheinen. Falls nicht soll es in die Datenbank eingetragen werden.
Das eintragen ist auch kein Problem, aber halt nur die Überprüfung macht mich gerade fertig. Habe mir schon Funktionen mit UNIQUE.
Oder ist es vielleicht einfacher die entsprechneden Spalte in der Datenbank auf UNIQUE zu setzen? aber wie ist es dann mit der Fehlermeldung?
Viele Grüße
PokerASS
Hello,
Das eintragen ist auch kein Problem, aber halt nur die Überprüfung macht mich gerade fertig. Habe mir schon Funktionen mit UNIQUE.
Oder ist es vielleicht einfacher die entsprechneden Spalte in der Datenbank auf UNIQUE zu setzen? aber wie ist es dann mit der Fehlermeldung?
Es ist der einzig praktikable Weg, mit einem Unique Index auf der betroffenen Spalte zu arbeiten, denn sonst schaffst Du Dir ein TOC-TOU-Problem (Time of Controul - Time of Use). Das bedeutet, dass zwischen der Überprüfung, ob der Name schon in der Spalte enthalten ist und der dem Eintrag (ein) weitere(r) Prozess(e) ebenso verfahren kann/können. Dann hättest Du hinterher trotzdem zwei oder mehr gleiche Eintragungen.
Wenn man also sowieso den Index benötigt, kann man die Ablehnung auch gleich darüber steuern.
Wenn Du einen MySQL-Fehler für eine Index-Verletzung bekommst, postest Du dem User die Daten als Affenformular zurück mit dem entsprechenden Vermerk.
Liebe Grüße aus Syburg bei Dortmund
Tom vom Berg
Hallo Tom,
Wenn Du einen MySQL-Fehler für eine Index-Verletzung bekommst, postest Du dem User die Daten als Affenformular zurück mit dem entsprechenden Vermerk.
das hört sich gut an, aber wie mache ich es mit dem Affenformular bzw. weiß ich nicht was du mit ein Affenformular meinst. Ein Affe wird wohl nicht hinter meiner Datenbank sitzen und warten bis ein doppelter Eintrag kommt :-)
Viele Grüße
PokerASS
Hi,
das hört sich gut an, aber wie mache ich es mit dem Affenformular bzw. weiß ich nicht was du mit ein Affenformular meinst. Ein Affe wird wohl nicht hinter meiner Datenbank sitzen und warten bis ein doppelter Eintrag kommt :-)
Aber selbst ein Affe kann nach dem Stichwort googlen.
MfG ChrisB
Hallo,
Könntest du mir bitte einmal den Link geben, damit ich mir es vor Ort anschauen kann. Dann helfe ich dir gerne!
Michael Weimar
Hallo,
Das eintragen ist auch kein Problem, aber halt nur die Überprüfung macht mich gerade fertig. Habe mir schon Funktionen mit UNIQUE.
Oder ist es vielleicht einfacher die entsprechneden Spalte in der Datenbank auf UNIQUE zu setzen? aber wie ist es dann mit der Fehlermeldung?
</archiv/2008/6/t173270/#m1137331>
Freundliche Grüße
Vinzenz