Formular - input hidden - Problem

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

  • Formular - input hidden - Problem

    Bin gerade dabei PHP zu lernen mit php-kurs.com, da wurde jetzt folgende Aufgabe gestellt, es ist auch eine Lösung dabei, die ich allerdings nicht verstehe.
    Über das HTML-Element input type="hidden" können für den Benutzer nicht sichtbare Informationen übertragen werden <input type="hidden" name="werteins" id="werteins" value="x" />
    Aufgabe ist, über ein Formular mit hidden-Feld einen Wert im Hintergrund zu übertragen. Der Wert des hidden-Feldes soll über eine Variable mit dem Namen "$aktion" übertragen werden. In dieser Variable soll als Wert 3 übertragen werden.
    $aktion wird übergeben mit hidden - Kontrolle, ob eine 3 übergeben wird (über Variable)
    Lösung:
    http://www.php-kurs.com/bilder/54-fo...rzeit-code.png

    Wo kommt da die 3 her?
    $aktion ist doch das aktuelle Datum oder?
    Gibt es da eine andere Lösung?

    # Bin totaler Anfänger

  • #2
    Ist das die Musterlösung? Dann passt sie nicht (mehr) zur Aufgabenstellung. Wenn $aktion = 3 sein soll, dann muss man dieser Variablen auch irgendwo mal die 3 zuweisen oder sie diret als value des hidden field notieren und dann per GET oder POST wieder entgegen nehmen. date() braucht es dazu überhaupt nicht.

    Also lass dich von der falschen Musterlösung nicht verwirren. Du scheinst es schon verstanden zu haben.

    Kommentar


    • #3
      Code:
      <?php 
      echo '
      <form action="kurs.php" method="get" enctype="text/plain">
      
      <input type="hidden" name="aktion" id="versteckt" value="3" />
      <input type="submit" value="absenden" />
      
      </form>
      ';
      
      ?>
      So dachte ich mir das, doch wie bekomme ich die 3 dann in die Variable $aktion?
      Ich verstehe den Sinn davon auch nicht so ganz, wofür sollen diese hidden Felder gut sein?

      Kommentar


      • #4
        PHP-Code:
        <?php 
        if(isset($_POST['aktion']))
        {
          
        $aktion $_POST['aktion'];
          echo 
        'Formular wurde abgesendet. In $aktion steht '.htmlentities($aktion).'!';

        } else
        {
          
        ?>
            <form action="" method="post">

              <input type="hidden" name="aktion" id="versteckt" value="3" />
              <input type="submit" value="absenden" />

            </form>
          <?php
        }
        ?>
        , wofür sollen diese hidden Felder gut sein?
        Natürlich um Daten verborgen übergeben zu können!


        Z.B. könnte man damit den Formularnamen übergeben.
        Dann weiß der Router/Dispatcher an welchen Controller des MVC der Request delegiert werden kann/soll
        Zuletzt geändert von combie; 23.12.2010, 12:07.
        Wir werden alle sterben

        Kommentar


        • #5
          OK
          Den Befehl "isset" kannte ich zwar noch nicht, doch kann ich mir denken, was er bewirkt, habe den Fehler auch gleich mal gemeldet, vielleicht wird es ja verbessert.

          Danke euch!

          Kommentar

          Lädt...
          X