Ankündigung

Einklappen
Keine Ankündigung bisher.

variablen richtig übergeben und prüfen

Einklappen

Neue Werbung 2019

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

  • variablen richtig übergeben und prüfen

    halli hallo,

    für ein schulprojekt erstellen wir in unserer computer AG ein formular mit 12 feldern, die wir mit post übergeben.

    ich fange jede variable mit:

    $var1=trim(strip_tags($HTTP_POST_VARS["var1"]));

    ab.
    das bedeutet aber, dass ich dies 12 mal machen muss

    gibt es da keinen besseren weg?

    was kann ich noch tun, um die variablen zu prüfen?
    gibt es sowas wie:

    $var1=int(trim(strip_tags($HTTP_POST_VARS["var1"])));

    mit trim und stripe entferne ich überflüssige leerzeichen und tags.
    somit denke ich, kann kein fremdcode über die variablen eingeschleust werden. oder irre ich mich?

    unser lehrer ist leider auch keine große hilfe und aus meinem buch (php für dummies) geht das leider nicht hervor.

    danke für eure hilfe.

  • #2
    meinst du das?

    $feld1=$_POST["Vorname"];
    $feld2=$_POST["Name"];
    usw.

    echo $feld1.$feld2 usw.;

    Formular:
    <input type="text" name="Vorname">
    <input type="text" name="Name">
    usw.

    Kommentar


    • #3
      Was meinst mit "abfangen" ???

      Du kannst jede Variable mittels $_POST['variablenname'] abfrqagen

      PHP-Code:
      <?php
      print_r
      ($_POST);
      ?>
      <== Die Funktion übergibt dir was du brauchst ... da kanns terstmal schaun was per POST von deinem Formular mit kommt ...

      Abe dir würde ich raten dir die Seite noch mal ganz gemütlich durchzulesen !!!

      http://faq-phpfriend.de/

      Und die Seite klärt dich über deine "Sicherheitsfragen" auf

      http://faq-phpfriend.de/ch/ch-security.html

      Kommentar


      • #4
        ja

        das meine ich.

        das übergeben funtkioniert ja auch.

        mir geht es darum, dass ich nicht 12x


        $var1=trim(strip_tags($HTTP_POST_VARS["var1"]));
        $var2=trim(strip_tags($HTTP_POST_VARS["var2"]));
        $var3=trim(strip_tags($HTTP_POST_VARS["var3"]));
        und und und

        machen muss.
        das ist lästig und sieht schlecht aus

        gibt es da nichts besseres?

        und gibt es weitere dinge um die variablen zu prüfen?

        int oder so?

        Kommentar


        • #5
          M3g4Star

          danke

          Kommentar


          • #6
            Wenn deine Variablen einer gewissen Notation gehorchen, dann kann du mit einer Schleife arbeiten und einen Zähler hochsetzen, der mit im Variablennamen eingebunden ist.

            Kommentar


            • #7
              Du kannst die Formularelemente alle var[] nennen. Dann hast du ein PHP Array mit 12 Feldern (bei 12 Formularelementen) und greifst mit $var[0] (es wird von 0 bis 11 nummeriert! oder $var[3] oder so zu

              Alternativ:
              PHP-Code:
              <?php
              for ($n=1;$n<=12;$n++)
              {
                
              $varname = "var" . $n;
                $
              $varname = $_POST['var' . $n];
              }
              ?>
              Bemerkung: BÖSE!

              Kommentar


              • #8
                Wieso ist die Alternative BÖSE!? Oder gehört der Satz zu deiner Signatur?

                Kommentar


                • #9
                  Zitat von reimondo
                  Wieso ist die Alternative BÖSE!?
                  Weil unsinnig.

                  Kommentar


                  • #10
                    Ich verstehe nicht ganz, wo die Unsinnigkeit in der for-Schleife liegt?
                    Klar ist die andere Variante einfacher und sicher auch eleganter, aber die Bemerkung "BÖSE" hatte für mich den Eindruck erweckt: So können Fehler auftreten, Sicherheitslücke, was auch immer...

                    Aber du hast recht. Die Formularfelder gleich so zu nennen, ist am besten.

                    Kommentar


                    • #11
                      was kann ich noch tun, um die variablen zu prüfen?
                      kommt drauf an was es für daten sind. du kannst schaun, ob ein system hinter den daten steckt: is_numeric
                      ctype_digit
                      preg_match

                      [offtopic] kannst du mal nen link zu deiner schulhomepage posten? oder wenn die HP noch nicht online ist, mir die schule sagen? ich hab auch mal so was gemacht

                      Kommentar


                      • #12
                        Ich auch, scheint nen trend zu sein

                        Kommentar

                        Lädt...
                        X