KlausM: Variablen übergeben

Hi ich habe eine denke ich simple Frage, bei der ich im Netz keine richtige Antwort finde.

Ich möchte gerne Variabelen übregeben, die in einem Formular eingegeben sind. (Das ist kein Problem)

Allerdings möchte ich gleichzeitig noch andere Variablen übergeben.

Ein Beispiel:
<?
$var1= 1;
?>
<form action="join.php" method="post">
<table>
 <tr>
  <td>First Name:</td>
  <td><input type="text" name="firstName"/></td>
 </tr>
</table>
<input type="submit" value="Next Step">
</form>

Ich will also, dass man auf "Next Step" klickt und die Variablen "firstName" UND var1 irgendwie übergeben wird.
Wenn möglich ohne einen "hidden Input" eintrag im HTML
Gibt es da eine Möglichkeit. Würde mich über eine Antwort freuen.

Gruss
Klaus

P.S.: Frohe Ostern

  1. Ein Beispiel:
    <?
    $var1= 1;
    ?>
    <form action="join.php" method="post">
    <table>
    <tr>
      <td>First Name:</td>
      <td><input type="text" name="firstName"/></td>
    </tr>
    </table>
    <input type="submit" value="Next Step">
    </form>

    Ich will also, dass man auf "Next Step" klickt und die Variablen "firstName" UND var1 irgendwie übergeben wird.
    Wenn möglich ohne einen "hidden Input" eintrag im HTML
    Gibt es da eine Möglichkeit. Würde mich über eine Antwort freuen.

    Hy,

    du kannst das entweder mit PHP Sessions lösen oder eine andere Lösung benutzen, die aber mit dem Thema Sicherheit nicht unbedingt eins ist:
    <form action="join.php?var=1&firstname=Hans" method="post">

    1. Sorry ich hab das was falsch gelesen...

      du kannst ganz einfach auf der nächsten Seite bzw. join.php die Variablen aufrufen, diese stecken automatisch in den Variablen in PHP:

      <?
      $_POST['NameDeinesFormularfeldes'];
      ?>

      mit deinem Beispiel: $_POST['firstName'];

      http://de3.php.net/manual/de/tutorial.forms.php

  2. Ich will also, dass man auf "Next Step" klickt und die Variablen "firstName" UND var1 irgendwie übergeben wird.
    Wenn möglich ohne einen "hidden Input" eintrag im HTML
    Gibt es da eine Möglichkeit. Würde mich über eine Antwort freuen.

    Du schreibst var1 in ein verstecktes Eingabefeld innerhalb deines Formulars. Du kannst dann im nächsten Skript ganz bequem per $_POST['hiddeninputvar1']; oder ähnlich darauf zugreifen.

    Frohe Ostern,
    Morten

    1. Hello,

      Du schreibst var1 in ein verstecktes Eingabefeld innerhalb deines Formulars. Du kannst dann im nächsten Skript ganz bequem per $_POST['hiddeninputvar1']; oder ähnlich darauf zugreifen.

      Du kannst auch mehrere Werte in einem Feld unterbringen

      $_values['id'] = 5;
        $_values['score'] = 2577;
        $_values['name'] = 'Hans Peter Müller';
        $_values['position'] = 'Galaxy green';

      $value_stream = serialize($_values);
        $value_send   = base64encode($valeu_stream)

      #----------

      <form .....method="post">
          <input type="hidden" name="transmit" value="<?php echo $value_send; ?>"
          ...
          <input type="submit" name="btn[send]" value="senden">
        </form>

      #----------

      $value_stream = base64decode($_POST['transmit']);
        $_values = unserialize($value_stream);

      ## Und da sind sie wieder

      Die Nachteile sind:

      • Die Daten laufen über den Client (Traffic)
      • Die Daten laufen über den Client (Fälschbarkari)
      • Die Daten werden nur per Formular weitergegeben

      Durch hinzufügen einer Prüfsumme kann man die Sicherheit geringfügig erhöhen
      Durch Verschlüsselung / Entschlüsselung der Daten kann man ein Weiteres tun...

      Harzliche Grüße vom Berg
      http://www.annerschbarrich.de

      Tom

      --
      Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
      Nur selber lernen macht schlau