Kerstin: Formfeld nur mit Ziffern?!?

Ich habe auf einer php-Seite ein Formularfeld, das unter anderem Postleitzahl und Kontonummer abfragt.
Die Daten werden auf der nächsten Seite wieder ausgegeben.
Ich brauche jetzt eine Fehlermeldung, die ausgeschmissen wird wenn die o.g. Felder etwas anderes als Ziffern enthalten.

Ich hab's schon mit
if ( !ereg( "([0-9]+)", $ktnr) ) {
$error_4 = "Bitte geben Sie als Kontonummer nur Ziffern ein";
}

und mit

if ( !ereg( "([0-9]*)", $ktnr) ) {
$error_4 = "Bitte geben Sie als Kontonummer nur Ziffern ein";
}

versucht.
Aber die Eingabe wird akzeptiert, sobald nur eine der Eingaben eine Zahl ist :-(.

Habe schon verzweifelt gesucht aber irgends was gefunden.-..

Kann mir irgendwer helfen?!?

Daanke,
Kerstin

  1. Hi Kerstin,

    Ich hab's schon mit
    if ( !ereg( "([0-9]+)", $ktnr) ) {

    »»  $error_4 = "Bitte geben Sie als Kontonummer nur Ziffern ein";
    »»  }

    if ( !ereg( "^([0-9]+)$", $ktnr) )
    ....

    damit muss der Ausdruck auf den ganzen String passen
    (^ ist Anfang $ ist Ende und nur Ziffern dazwischen (hier mind. eine))

    Für PLZ auch:
      if ( !ereg( "^([0-9]{5})$", $ktnr) )
        ....
    genau 5 Ziffern

    für KTO.Nr auch:
      if ( !ereg( "^([0-9]{6,})$", $ktnr) )
        ....
    mindestens 6 Ziffern

    Gruss,
    Carsten

    1. das wars :o)))

      DANKE!
      dann ist der feierabend ja sicher ;)

      Kerstin

  2. Versuch doch mal folgendes

    • alle Ziffern (0-9) ersetzen durch z.B. "**"
    • prüfen ob die Länge vorher*2 == die neue Länge, wenn nicht dann waren es nicht nur Ziffern

    gruss

    Curt