reguläre ausdrücke - nur zahlen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • 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....
    Zuletzt geändert von chrpun; 19.12.2005, 15:05.
    2 meiner pages:

    Kommentar


    • #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 $

      Kommentar


      • #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

        Kommentar


        • #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:

          Kommentar


          • #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.
            Zuletzt geändert von thommyk; 19.12.2005, 15:37.
            Die zehn Gebote sind deswegen so kurz und logisch, weil sie ohne Mitwirkung von Juristen zustande gekommen sind. (Charles de Gaulle)

            Kommentar


            • #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?

              Kommentar


              • #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?

                Kommentar


                • #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

                  Kommentar

                  Lädt...
                  X