Bernd Armbruster: Fomrulareingabe auf int prüfen

Hallo!

Ich hab ein Textfeld, bei dem der User seine Postleitzahl eingeben soll. Zur Validierung will ich mit PHP prüfen, ob erstens die Länge 5 ist ( Ja, ich weiß, gilt nur in Deutschland! Internationalisierung kommt später! ) und zweitens, ob der String nur aus Ziffern besteht.

Wie löse ich das zweite Problem am geschicktesten? Muß ich das "manuell" machen? Oder kennt PHP da eine Funktion? "is_int()" und "is_integer()" bringen leider nicht den gewünschten Effekt, da aus dem Formular erstmal ein String kommt!

Danke!

Gruß, Bernd Armbruster

  1. hi

    Ich hab ein Textfeld, bei dem der User seine Postleitzahl eingeben soll. Zur Validierung will ich mit PHP prüfen, ob erstens die Länge 5 ist ( Ja, ich weiß, gilt nur in Deutschland! Internationalisierung kommt später! ) und zweitens, ob der String nur aus Ziffern besteht.

    Versuchs mal mit regulären Ausdrücken:
    http://www.php.net/manual/de/function.preg-match.php
    etwa so (ungetestet):
    if (preg_match("/[1]{5}$/",$postleitzahl)) {
    //ok
    }

    gruß
    Tobias


    1. 0-9 ↩︎

  2. Ich hab ein Textfeld, bei dem der User seine Postleitzahl eingeben soll. Zur Validierung will ich mit PHP prüfen, ob erstens die Länge 5 ist ( Ja, ich weiß, gilt nur in Deutschland! Internationalisierung kommt später! ) und zweitens, ob der String nur aus Ziffern besteht.

    Wie löse ich das zweite Problem am geschicktesten? Muß ich das "manuell" machen? Oder kennt PHP da eine Funktion? "is_int()" und "is_integer()" bringen leider nicht den gewünschten Effekt, da aus dem Formular erstmal ein String kommt!

    Mit preg_match und dem Ausdruck /[1]{5}$/ hast du es sicherlich am einfachsten.


    1. 0-9 ↩︎

  3. Oder kennt PHP da eine Funktion?

    is_numeric()

    http://www.php.net/manual/en/function.is-numeric.php