reguläre ausdrücke - nur zahlen

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • reguläre ausdrücke - nur zahlen

    hi,

    ich will prüfen ob in einem stirng nur zahlen vorkommen was ja an sich so gehen müsste:

    if (!preg_match('[0-9]', $_POST[kontonummer])) { $fehler[kontonummer] = '<span class=rot>keine gültige Kontonummer</span>'; }

    7324873824 true
    hdjfhjdksf false
    hdjfs783247289 TRUE WARUM?

  • #2
    PHP Code:
    if (!preg_match('/\D/'$_POST['kontonummer'])) { die ('Kontonummer ist falsch...'); } 
    so müsste es gehen....
    Last edited by chrpun; 19-12-2005, 14:05.
    2 meiner pages:

    Comment


    • #3
      Re: reguläre ausdrücke - nur zahlen

      Original geschrieben von chvickers

      hdjfs783247289 TRUE WARUM?
      weil du so definiert hast

      Tipp: mach was mit ^ und $

      Comment


      • #4
        ich weiss der PC macht nur was man einem sagt....

        also /D/ geht nicht

        ^[0-9]{6,10}$ liefert mir auch nicht was ich haben will

        Comment


        • #5
          also ich hab preg_match('/\D/') im script stehen und es funzt. (die forums PHP-funktion hat den Backshlash irgendwie weg gemacht...)
          2 meiner pages:

          Comment


          • #6
            Das ! ist falsch

            PHP Code:
            if (preg_match('/\\D/'$_POST['kontonummer'])) { die ('Kontonummer ist falsch...'); } 
            oder auch
            PHP Code:
            if (preg_match('[^0-9]'$_POST['kontonummer'])) { $fehler['kontonummer'] = '<span class=rot>keine gültige Kontonummer</span>'; } 
            und gewöhn die '' bei assoziativen Arrays an.
            Last edited by thommyk; 19-12-2005, 14:37.
            Die zehn Gebote sind deswegen so kurz und logisch, weil sie ohne Mitwirkung von Juristen zustande gekommen sind. (Charles de Gaulle)

            Comment


            • #7
              danke

              hi all,

              danke also es geht jetzt:

              if (preg_match('/\D/', $_POST[kontonummer])) { $fehler['kontonummer'] = '<span class=rot>keine gültige Kontonummer</span>'; }

              @thommyk warum sind die '' wichtig bei ass arrays?

              Comment


              • #8
                Re: danke

                Original geschrieben von chvickers

                @thommyk warum sind die '' wichtig bei ass arrays?
                weil es sonst zu Fehler führen könnte. Bsp. du hast irgendwo in deinem Script eine Konstante namens kontonummer mit dem Wert 12345. Dann mach mal so:

                echo "ohne ' ".$_POST[kontonummer];
                echo "<br />mit ' ".$_POST['kontonummer'];

                siehst du den Unterschied?

                Comment


                • #9
                  danke

                  hi,

                  habe es probiert und ja es kommt ohne '' gar nichts, danke für den tipp, ich werde nämlich auch konstanten verwenden.

                  cu hv

                  Comment

                  Working...
                  X