Checkboxen Einträge anders übergeben, wie?

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

  • Checkboxen Einträge anders übergeben, wie?

    Hallo Leute,

    PHP-Code:
    <class="text">
    <
    input name="internet" type="checkbox" id="internet" value="ON">
    </
    td>
    Internet   $internet 
    Wird in der Mail als:

    Kennen Sie das CampusCenter? : Ja
    Internet : ON
    dargestellt.
    Wie kann ich es machen das statt on oder off z.B. "Der eEintrag wurde angewählt" steht?
    Das Formular wird per mail verschickt .



    Hier nochmal das ganze
    PHP-Code:
    <?php
    $name_tag
    [0] = "Sonntag";         
    $name_tag[1] = "Montag";  
    $name_tag[2] = "Dienstag";  
    $name_tag[3] = "Mittwoch";  
    $name_tag[4] = "Donnerstag";  
    $name_tag[5] = "Freitag";  
    $name_tag[6] = "Samstag";
    $num_tag    date"w");
    $day        $name_tag[$num_tag];
    $year        date("Y");  
    $day_num    date("d");
    $month        date("m");
    $time        = (date("H:i"));
    $redirect    =    "thanks_template.htm"
    $sender     =    "John Doe"
    $email01    =    "ok@m.com"
    $subject01    =    "Nachricht aus Mailformular"; /
    $body01        =    "Nachricht gesendet am $day$day_num.$month.$year um $time
    ----------------------------------------------------------------
    Kennen Sie das CampusCenter? : 
    $test
    Internet   : 
    $internet
    Vorname  : 
    $vorname
    eMai    : 
    $email
    ----------------------------------------------------------------
    Nachricht: 
    $message";
    mail ($email01$subject01$body01"From:$email");
    header ("Location: ".$redirect);
    exit;
    }

    ?>

  • #2
    wie wärs mit ner if($HTTP_POST_VARS['internet'] == "ON") abfrage?
    Beantworte nie Threads mit mehr als 15 followups...
    Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

    Kommentar


    • #3
      Original geschrieben von MelloPie
      wie wärs mit ner if($HTTP_POST_VARS['internet'] == "ON") abfrage?
      Thx, so habe ich das auch versucht.

      Ich weiß nur nicht so richtig wie ich das dan Übergebe.


      PHP-Code:
      if($HTTP_POST_VARS['inter'] == "ON") print ("Internet!"); 
      scheint nicht zu funken.

      Kommentar


      • #4
        Hi Bang,

        Also es wird in der Mail bei $Internet ="ON" -> 'ON' ausgegeben?
        Kann man das nicht so lösen?

        PHP-Code:
        <?php
        if ($Internet =="ON")
          { echo 
        " Diese Checkbox is angeklickt";}
          else
          { echo 
        "Oder wohl doch nicht";}
        ?>
        Grüße
        cu LaHood

        Kommentar


        • #5
          Mach mal so:

          PHP-Code:
          if($HTTP_POST_VARS['internet'] == "ON")
             
          $internet "Ich liebe das Internet!"

          Kommentar


          • #6
            @Tobi,

            if($HTTP_POST_VARS['internet'] == "ON")
            $internet = "Ich liebe das Internet!";

            was passiert da genau? Wofür steht HTTP_POST_VARS?

            Grüße
            cu LaHood

            Kommentar


            • #7
              if($HTTP_POST_VARS['internet'] == "ON")
              $internet = "Ich liebe das Internet!";

              was passiert da genau? Wofür steht HTTP_POST_VARS?
              HTTP_POST_VARS ist ein array, in dem sich die per POST übertragenen formularvariablen befinden.

              ab einer gewissen php-version kannst du nicht mehr über $internet auf dein inhalt deines gleichnamigen formularfeldes zugreifen, sondern musst dieses array (bzw. $_POST[internet]) verwenden, aus sicherheitsgründen, da man sonst durch einfügen zusätzlicher formularfelder andere variablen die du in deinem script benutzt, überschreiben könnte.
              I don't believe in rebirth. Actually, I never did in my whole lives.

              Kommentar


              • #8
                hi wahsaga,

                ab einer gewissen php-version kannst du nicht mehr über $internet auf dein inhalt deines gleichnamigen formularfeldes zugreifen
                ok das leuchtet ein ;o)


                aus sicherheitsgründen, da man sonst durch einfügen zusätzlicher formularfelder andere variablen die du in deinem script benutzt, überschreiben könnte.
                das verstehe ich allerdings nihct. Wer kann denn zusätzliche Formularfelder einbauen? Doch nicht der User der die ebsite anschaut, oder?

                Grüße
                cu LaHood

                Kommentar


                • #9
                  das verstehe ich allerdings nihct. Wer kann denn zusätzliche Formularfelder einbauen? Doch nicht der User der die ebsite anschaut, oder?
                  ich kann mir den quelltext deiner seite lokal abspeichern, und ein zusätzliches formularfeld einbauen, dass dann z.b. eine von dir als variable vordefinierte mysql-query mit einem gleichnamigen formularfeld überschreibt, so dass plötzlich etwas aus deiner datenbank gelöscht wird anstatt lediglich daten auszulesen.

                  dazu brauche ich nach dem lokalen abspeichern nur den in der formular-action angegebenen dateinamen mit dem kompletten pfad vervollständigen, und kann die seite lokal in meinem browser aufrufen, und abschicken.

                  selbst wenn du versuchst, dass durch eine referer-abfrage zu verhinden - den kann man nach belieben faken.


                  wenn jetzt aber in neuen php-versionen register_globals auf off gestellt ist, steht dir eine formularvariable nicht mehr automatisch unter dem namen zur verfügung, den du in der html-seite vergeben hast, sondern du musst sie dir aus dem entsprechenden array holen.

                  statt zugriff auf $feldname musst du jetzt z.b. mit $_POST['feldname'] arbeiten.
                  das hat aber den vorteil, dass ich deine variable $query nicht mehr überschreiben kann, in dem ich einfach in das formular ein zusätzliches feld namens 'query' einbaue - dieser wert wird dann zwar auch mit übertragen, steht aber nur in $_POST['query'] zur verfügung und überschreibt keine vorhandene variable.


                  p.s.: ich muss ja noch nicht mal ein formular ändern - formulardaten lassen sich ja nicht nur mit POST übertragen, sondern auch mit der methode GET, dabei werden die variablen und ihre werte einfach an den URL drangehängt. ich müsste also nur den aufruf deines formulares um seitenname.php?query=(anweisung zum löschen) erweitern, und der effekt wäre der selbe...
                  I don't believe in rebirth. Actually, I never did in my whole lives.

                  Kommentar


                  • #10
                    alles klar,

                    vielen Dank für deine ausführliche Beschreibung. Bei dem Anhängen an die Url habe ich mir das schon gedacht.


                    Grüße
                    cu LaHood

                    Kommentar


                    • #11
                      @ wahsaga & the rest:

                      Noch einfacher kann ich das Script maipulieren, indem ich einfach &inet=wasanderes ind die Adresse schreibe. Da das alte $internet sowohl $_POST[inet] als auch $_GET[inet] abdeckt, Cookies auch. aber das tut hier weniger zur Sache.

                      Kommentar


                      • #12
                        warum so kompliziert ...

                        das ist dein script, bei dem dann nur ON in der mail steht.

                        PHP-Code:
                        <class="text">
                        <
                        input name="internet" type="checkbox" id="internet" value="ON">
                        </
                        td>
                        Internet   $internet 
                        wenn du diesen parameter in dieser form nicht brauchst, mache es doch einfach so.

                        PHP-Code:
                        <class="text">
                        <
                        input name="internet" type="checkbox" id="internet" value="Der Punkt wurde angewählt.">
                        </
                        td>
                        Internet   $internet 
                        somit steht dann in deiner mail Der Punkt wurde angewählt.

                        reicht dir das schon?
                        INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                        Kommentar

                        Lädt...
                        X