PLZ eingabe
KAtzensprung
- javascript
0 srob0 Sven Rautenberg
Hallo,
vielleicht hat ja jemand von Euch eine Idee,
wie kriege ich es hin, das eine PLZ eingabe nicht mit 00000 erfolgen darf.
hier mein script:
<script language="JavaScript">
function chkFormular() {
var chkZ = 1;
for(i=0;i<document.Formular.PLZ.value.length;++i)
if(document.Formular.PLZ.value.charAt(i) < "0"
|| document.Formular.PLZ.value.charAt(i) > "9")
chkZ = -1;
if(chkZ == -1)
{
alert(document.Formular.PLZ.value + " ist keine gültige PLZ.")
document.Formular.PLZ.focus();
return false;
}
if(document.Formular.PLZ.value.length != 5)
{
alert(document.Formular.PLZ.value + " ist keine fünfstellige PLZ.")
return false;
}
}
</script>
hate jemand eine Idee
Hi Katzensprung,
vielleicht so (ohne Test, geht hoffentlich...)?
<script language="JavaScript">
function chkFormular()
{
var regDigits = /[0-9]{5}/;
var lcValue = document.Formular.PLZ.value;
if(regDigits.exec(lcValue))
{
if(parseInt(lcValue) > 0)
{ /* Ok */}
else
{ /* IstGleichNull */}
}
else
{ /* keine fünf Ziffern eingegeben */}
[...]
}
HTH Robert
Moin!
vielleicht hat ja jemand von Euch eine Idee,
wie kriege ich es hin, das eine PLZ eingabe nicht mit 00000 erfolgen darf.
Klingt so, also ob du gewisse, der Form einer PLZ entsprechende Eingaben trotzdem zurückweisen willst.
Überlege dir genau, ob du das wirklich willst. "00000" ist eine fünfstellige Ziffernfolge - also genau die Form einer Postleitzahl. Wenn du "00000" als offensichtlich falsche Eingabe verhindern willst, werden die Benutzer, welche keine PLZ angeben wollen, einfach auf die nächste Möglichkeit ausweichen: "11111" oder "12345".
Wenn du wirklich prüfen willst, ob die eingegebene PLZ existiert, hast du eine ziemlich aufwendige Prüfung vor dir. Außerdem mußt du dann immer dafür sorgen, daß deine PLZ-Datenbank aktuell bleibt, weil ja durchaus mal neue Postleitzahlen dazukommen können, oder andere wegfallen.
Also: Entweder prüfst du nur gewisse Form-Merkmale der Eingabe ab, oder du prüfst ernsthaft und vollständig, ob die Eingabe wirklich richtig ist (und solltest dann die PLZ auch noch mit der Ortsangabe verknüpfen und auf Korrektheit prüfen). Alles andere dazwischen hat kaum Sinn, weil es deine Prüfung nicht wirksam verbessert, sondern nur den Anwender nervt.
- Sven Rautenberg
11111 oder 12345 können ruhig ausgegeben werden, nur 00000 nicht
Überlege dir genau, ob du das wirklich willst. "00000" ist eine fünfstellige Ziffernfolge - also genau die Form einer Postleitzahl. Wenn du "00000" als offensichtlich falsche Eingabe verhindern willst, werden die Benutzer, welche keine PLZ angeben wollen, einfach auf die nächste Möglichkeit ausweichen: "11111" oder "12345".
Hi,
Also: Entweder prüfst du nur gewisse Form-Merkmale der Eingabe ab, oder du prüfst ernsthaft und vollständig, ob die Eingabe wirklich richtig ist (und solltest dann die PLZ auch noch mit der Ortsangabe verknüpfen und auf Korrektheit prüfen). Alles andere dazwischen hat kaum Sinn, weil es deine Prüfung nicht wirksam verbessert, sondern nur den Anwender nervt.
Welchen Anwender soll das nerven? Du hast zwar schon recht das die 00000 Prüfung nichts bringt, aber auf solche Anwender die mir ne falsche Plz angeben könnte ich verzichten und da ist es mir dann auch egal ob es die stört das 00000 nicht geht. Und zuerst 11111 usw. ausprobiert werden muss um den Seiteninhaber zu täuschen.
grüße
ueps
Moin!
Welchen Anwender soll das nerven? Du hast zwar schon recht das die 00000 Prüfung nichts bringt, aber auf solche Anwender die mir ne falsche Plz angeben könnte ich verzichten und da ist es mir dann auch egal ob es die stört das 00000 nicht geht. Und zuerst 11111 usw. ausprobiert werden muss um den Seiteninhaber zu täuschen.
Ja, aber der böse Anwender wird genau eine Sekunde nach dem Formularabschicken durch Javascript zurückgepfiffen. Dann wird er eine andere Zahl eingeben, und gut ist. Du hingegen hast dann falsche Daten, die nicht mal _offensichtlich_ falsch sind (00000 wäre doch ein tolles Indiz, dorthin keine Post zu verschicken), sondern einer echten PLZ ziemlich ähnlich sehen.
Ok, der Nerv-Faktor für User mit echten PLZ ist gering bis Null, der Nerv-Faktor für User mit falscher PLZ ist etwas erhöht, aber das Hindernis ist nicht wirklich groß. Und eine Eingabeprüfung ist doch eigentlich dazu da, gewisse Falscheingaben zu verhindern.
- Sven Rautenberg