variable auf zahl prüfen?

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

  • variable auf zahl prüfen?

    hi :-D

    gibt es irgenteine möglichkeit zuprüfen ob in einer variable eine zahl gespeichert ist?
    also wenn ich z.b. in einem formular einen wert übergebe, zu verhindern das jemand buchstaben eingibt?

    <input type=text name="anzahl" size=9 maxsize=9 value="0">

  • #2
    is_numeric()

    Kommentar


    • #3
      "verhindern" kannst du es nur, wenn du dem benutzer die vielen bunten tasten mit den ziffern aus der tastatur entfernst. du meinst bestimmt "erkennen"? dafür gibt es viele möglichkeiten, u.a. ein regulärer ausdruck "\d".

      Kommentar


      • #4
        is_numeric()
        Da kann man aber immer noch Buchstaben eingeben (oktal und hexadezimal)
        @topicstarter
        Wenn's nur Integers sein dürfen könntest du z.B.
        PHP-Code:
        function is_strInt($data){
                
        $xy strtolower($data);
                
        $xy preg_replace("/\s*/"""$xy);
                
        $xy ereg_replace("\+"""$xy);
                if(
        strlen($xy) != strlen($_GET["var_name"]))
                {
                    return 
        false;
                }
                elseif(
        is_numeric($xy) && !strpos($xy,".") && !strpos($xy"e") && !strpos($xy,"x"))
                {
                    return 
        $data;
                }
                else
                {
                    return 
        false;
                }

        Ansonsten wie von penizilin geschrieben ein RegExp

        Gruss

        tobi
        Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

        [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
        Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

        Kommentar


        • #5
          @ jahlives - umständlicher gings nicht?
          und is_numeric liefert auch bei utopisch langen zahlen jenseits von int true.

          daher hab ich mal integers auf 9 stellen begrenzt:
          preg_match('/^\d{1,9}$/', $_POST['zahl'])

          Kommentar


          • #6
            Original geschrieben von 3DMax
            @ jahlives - umständlicher gings nicht?
            und is_numeric liefert auch bei utopisch langen zahlen jenseits von int true.

            daher hab ich mal integers auf 9 stellen begrenzt:
            preg_match('/^\d{1,9}$/', $_POST['zahl'])
            PHP-Code:
            if ((string)$id == (string)intval($id)) {
              echo 
            'Dies ist ein Integer';
            } else {
              echo 
            'halt keiner';

            Zuletzt geändert von ghostgambler; 06.10.2006, 00:56.

            Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

            bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
            Wie man Fragen richtig stellt

            Kommentar


            • #7
              hm, ginge auch

              Kommentar


              • #8
                Original geschrieben von 3DMax
                hm, ginge auch
                und ich maße mir einfach mal an zu behaupten, dass das fixer geht ^^

                Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

                bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
                Wie man Fragen richtig stellt

                Kommentar


                • #9
                  Original geschrieben von ghostgambler
                  und ich maße mir einfach mal an zu behaupten, dass das fixer geht ^^
                  wieviel smilies soll ich denn noch reinsetzen?

                  ich wollte damit sagen, deine lösung gefällt mir.

                  Kommentar


                  • #10
                    Original geschrieben von 3DMax
                    wieviel smilies soll ich denn noch reinsetzen?

                    ich wollte damit sagen, deine lösung gefällt mir.
                    Wie viele Smilies soll ich noch reinsetzen, damit klar wird, dass ich dein Smiley-Spiel fortgesetzt habe? ^^

                    Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

                    bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
                    Wie man Fragen richtig stellt

                    Kommentar


                    • #11
                      @ghostgambler
                      eine wirklich fixe kurze Lösung Werde ich in Zukunft für solche Zwecke einsetzen und nicht mehr meinen langen Rattenschwanz

                      Gruss

                      tobi
                      Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

                      [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
                      Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

                      Kommentar

                      Lädt...
                      X