Hallo Linuchs,
die Frage ist, ob da jemand mit der Hand am Arm sitzt und das eingibt, oder irgendein Bot. Manuelle Scherzregistrierungen dürften auf remso.eu eher unwahrscheinlich sein. Weshalb sollte das jemand tun.
Gegen einen Bot kannst Du Dich - in Grenzen - verteidigen, indem Du auf der Registrierseite ein CSRF-Token hinzufügst (Cross Site Request Forgery).
Dazu braucht das Registrierformular ein hidden input Feld, in dem der Server beim Abruf des Formulars einen zufälligen Wert einträgt. Dieser Wert wird ebenfalls in der Session gespeichert. Kommt nun der POST Request, vergleichst Du das gesendete mit dem gespeicherten Token. Stimmt es nicht überein, ignorierst Du die Registrierung.
Natürlich kann ein Bot, der sein Salz wert ist, ein CSRF-Token erkennen und mitsenden. Solche Viecher agieren gerne mal hier im Forum und posten dann auf italienisch Werbung für Hochzeitsmode, oder ähnliches. Das braucht dann aber eben einen etwas aufwändigeren Bot.
Du kannst das CSRF Token noch durch eine Aufgabe ergänzen, die vom Registranten zu lösen ist und die Du so formulierst, dass ein Bot damit Probleme hat.
- "Bitte sag mir, was die Differenz von neun und drei ist".
- "Wie viele Doppelbuchstaben enthält der Straßenname Nizzaallee?" (Kennt jeder, der in Aachen studiert hat)
Wenn Du hier ein paar unterschiedliche Rätsel vorsiehst, muss der Bot-Papa schon sehr hinter Dir her sein, um seinen Bot darauf anzupassen.
Deine Idee, die Registrierung an einen Termin zu knüpfen, ist ebenfalls sinnvoll. Ich würde es aber für einfacher halten, auf der Registrierseite den Hinweis zu schalten, dass Benutzerkonten, für die kein Termin veröffentlich wird, binnen kurzer Zeit automagisch gelöscht werden und man sich deshalb nur registrieren solle, wenn man auch einen Termin einstellen möchte. Ich denke, das kannst Du relativ problemfrei scripten. Das kann man für einen Monat oder so auch per SQL Statement manuell machen, und ggf. hat der Spaßvogel dann ja schon die Lust verloren.
Rolf
sumpsi - posui - obstruxi