phpbar.de logo

Mailinglisten-Archive

[php] Gleichzeitig Parameter auslesen und auf andere php-Seite weiterleiten.

[php] Gleichzeitig Parameter auslesen und auf andere php-Seite weiterleiten.

Ulrich Schneider php_(at)_phpcenter.de
Mon, 30 Jul 2001 09:45:04 +0200


Problem: Anhand eines von php erzeugten Formulare sollen beim Übertragen der
Formulardaten (,submit'-Button) gleichzeitig Paramter ausgelesen werden und
auf eine andere html-Seite weitergeleitet werden.

Die Funktion
print_result_table_button("admin_start.phtml", determine_number,
start_button, $result);
erzeugt ein Formular (Quellcode siehe unten) mit Nummern und zugehörigen
Radiobuttons und Einträgen aus der Datenbank. start_button ist der Knopf,
der beim Abschicken des Formulars verwendet wird um festzustellen, welchen
Radiobutton der Benutzer angeclickt hat. Beim Anclicken wird ein Event
ausgelöst. Es wird action='determine_number' gesezt.

Nun wird folgende Funktion eingesezt um einen bestimmten Paramter (der durch
die Nummer, die der Benutzer anhand des Radiobuttons angecklickt hat,
bestimmt ist) auszulesen ($lehrstuhl$).
Hier der Quellcode :

if ($action=='determine_number'){
  #Primary Key herausholen
  $succ = mysql_data_seek($result, $start_button);
  $arr = mysql_fetch_array($result, MYSQL_ASSOC);
  global $lehrstuhl;
  $lehrstuhl = $arr['NAME'];

Jetzt erzege ich ein weiteres Formular auf derselben php-Seite und einen
weiteren Button zum Abschicken des Formulars um den Parameter $lehrstuhl
auf eine andere php-Seite zu übergeben.

#Weiterleiten zur Referatseingabe
  echo "<FORM METHOD='post' ACTION='admin_seminar.phtml'>";
      echo "<INPUT TYPE='hidden' NAME='lehrstuhl' VALUE='$lehrstuhl'>";
      echo "<INPUT TYPE='submit' VALUE='Weiter'>";
  echo "</FORM>";

Jetzt würde ich gerne wissen ob ich diese beiden Schritte:
1. Paramter $lehrstuhl auslesen
2. $lehrstuhl auf andere php-Seite weiterleiten
nicht in einem Aufwasch erledigen kann.


Hier das komplette Programm ...

<?php
global $result;

#Tabelle ausgeben
print_result_table_button("admin_start.phtml", determine_number,
start_button, $result);

if ($action=='determine_number'){
  #Primary Key herausholen
  $succ = mysql_data_seek($result, $start_button);
  $arr = mysql_fetch_array($result, MYSQL_ASSOC);
  global $lehrstuhl;
  $lehrstuhl = $arr['NAME'];

  echo "Nummmer: $start_button       Lehrstuhl = $lehrstuhl";

  #Weiterleiten zur Referatseingabe
  echo "<FORM METHOD='post' ACTION='admin_seminar.phtml'>";
      echo "<INPUT TYPE='hidden' NAME='lehrstuhl' VALUE='$lehrstuhl'>";
      echo "<INPUT TYPE='submit' VALUE='Weiter'>";
  echo "</FORM>";
}
?>





Hier der Quellcode der Funktion ...

function print_result_table_button($phppage, $action, $button, $result){
  echo "<FORM METHOD='POST' ACTION='$phppage?action=$action&$button=$j'>";
  echo "<TABLE>\n";

  // 1. Tabellenzeile Anfang
  echo "  <TR>\n";
  echo "<th></th>\n";
  for ($i = 0; $i < mysql_num_fields($result); $i++){
    echo "    <th>".mysql_field_name($result,$i)."</th>\n";
  }
  // 1. Tabellenzeile Ende
  echo "  </tr>\n";
for ($j = 0; $j < mysql_num_rows($result); $j++){
  $row[$j] = mysql_fetch_array($result);
    echo "  <TR>\n";
    // Alle Spalten durchgehen
   echo "<TD>\n";
   echo "$j<INPUT TYPE=RADIO NAME='$button' value='$j'>\n";
   echo "</TD>\n";
    for ($i = 0; $i < mysql_num_fields($result); $i++){
      echo "    <td>{$row[$j][$i]}</td>\n";
    }
    // Tabellenzeilen-Ende
    echo "  </tr>\n";
  }





php::bar PHP Wiki   -   Listenarchive