Am 23. September 2010 07:49 schrieb Eric Schaefer eric@gixgax.de:
Machst Du das nur im Client, hast Du ein ernsthaftes Problem. Clientseitige Validierung dient der Benutzerfreundlichkeit, serverseitige der Sicherheit.
Wenn du mit Sicherheit den Schutz vor SQL-Injections und solchem Kram meinst, stimme ich dir zu. Das ist aber oft nur ein kleiner Teil der gesamten Validierung. Wenn du in der Usertable eines Forums den nick auf UNIQUE stehen hast und bei der Anmeldung einfach Nick, Passwort, E-Mail und Webseite ohne Überprüfung in die Tabelle kippst, kann dem Server und den anderen Usern nicht viel passieren, oder?
Dabei stimme ich dir allerdings nicht zu:
Validierung gehört IMMER auf den Server, nicht auf den Client!
Beispiel: Ich betreibe einen Webservice, bei dem man viele Patientendaten eingeben kann und dann die Wahrscheinlichkeit für das Auftreten einiger Krankheiten erhält. Die Berechnungsformel steckt in einem eigenen Programm mit eigener Validierung.
Der Weg sieht so aus: Die Eingaben werden mit jQuery clientseitig validiert. Der Server parst jedes Eingabefeld als Float und speichert die Daten. "3,5" wird dabei zu 3 und " 4" zu 0. Dann bezahlt der Kunde, die Daten gehen an die Berechnungsformel. Ich habe also die Validierung auf Plausibilität komplett aus dem Webserver geschmissen. Wenn in dieser ein Fehler auftritt, kann der Kunde weder korrigieren noch sein Geld zurückbekommen, er bekommt nur eine Fehlermeldung. Ergbebnis? Noch hat kein Kunde eine Fehlermeldung bekommen.
Viele Grüße Thomas