variable Variablen ausgeben?

  • Themenstarter Themenstarter di-five
  • Beginndatum Beginndatum
D

di-five

Hallo,

ich habe ein HTML-Formular, das mir in einer Tabelle ein Textfeld mit dem Namen a_iddesbuches, den Autor des Buches, den Titel, den Untertitel und den Preis ausgibt. Die Tabelle wird so lange generiert, bis keine id mehr da ist. Hier mal der Code:

Code:
<?php
$result = mysql_query("SELECT * FROM buecher ORDER BY autor, titel");
while($row = mysql_fetch_row($result))
{		
echo '<tr>
        <td bgcolor="#F5F5F5" width="40"><input name="a_' . $row[0] . '" type="text" size="1" maxlength="3" value="0"></td>
	<td bgcolor="#F5F5F5"><span class="normal">' . $row[1] . '<br></span><span class="normal_fett">' . $row[2] . '</span></td>
	<td bgcolor="#F5F5F5" width="55" align="right"><span class="normal_fett">' . $row[6] . ' €</td>
      </tr>
      <tr><td colspan="3" height="10"></td></tr>';
}
?>


Das soll ein einfaches Bestellformular ergeben. Auf der nächsten Seite soll der Kunde dann seine Anschrift angeben können (bestellung_1.php). Auf der dann folgenden Seite sollen die bestellten Bücher, sowie die Anschrift des Kunden nochmals ausgegeben werden (bestellung_2.php). Wieder ein Formular soll dann alles per eMail verschickt werden.

Wie kann ich die Variablen auf bestellung_2.php speichern? Die Funktion mit dem hidden text habe ich schonmal angewandt, das Problem ist, ? ich muss die Variablen in einem array oder so speichern? Wenn ich ein Buch hinzufüge, oder lösche, kommt ja auch eine neue id hinzu, bzw. es verschwindet eine id. Ich weiß nicht, wie ich die Variablen ausgelsen, und wieder gespeichert kriege. Ich benötige die id später noch, um bei der kompletten Anzeige (Anschrift und bestellte Bücher) alles was der Kunde bestellt hat, also wo das textfeld-value größer als 0 ist nochmal anzeigen zu lassen.

Wäre sehr froh über eine Idee wie ich das umsetzen könnte :)

Gruß di-five
 
Du könntest mit Sessions arbeiten.
Du kannst auch Arrays übergeben.
Beispiel für Arrays (Man achte auf das Name-Attribut):
PHP:
<?

echo '<form action="'.basename($_SERVER['PHP_SELF'])
    .'" method="post">';
echo 'Einfaches Array:<br /><input type="text" '
    .'name="werte[]" value="'
    .((isset($_POST['werte'][0]))
        ?$_POST['werte'][0]
        :'')
    .'"><br />';
echo 'Einfaches Array:<br /><input type="text" '
    .'name="werte[]" value="'
    .((isset($_POST['werte'][1]))
        ?$_POST['werte'][1]
        :'')
    .'"><br />';
echo 'Einfaches Array:<br /><input type="text" '
    .'name="werte[]" value="'
    .((isset($_POST['werte'][2]))
        ?$_POST['werte'][2]
        :'')
    .'"><br />';
echo 'Einfaches Array:<br /><input type="text" '
    .'name="werte[]" value="'
    .((isset($_POST['werte'][3]))
        ?$_POST['werte'][3]
        :'')
    .'"><br />';
echo 'Einfaches Array:<br /><input type="text" '
    .'name="werte[]" value="'
    .((isset($_POST['werte'][4]))
        ?$_POST['werte'][4]
        :'')
    .'"><br />';


echo 'Bestimmtes Arrayelement:<br /><input type="text" '
    .'name="werte[speziellerWert]" value="'
    .((isset($_POST['werte']['speziellerWert']))
        ?$_POST['werte']['speziellerWert']
        :'')
    .'"><br /><br />';

echo '<input type="submit"></form>';
?>

Du könntest mit $$ auf variable Variablen zugreifen, allerdings ist das ein riskanter und auch uneleganter Weg.

Gruß hpvw
 
Hi hpvw,

danke für deine schnelle Antwort!
Ich werde mir das mal angucken.

Gruß di-five
 
Zurück