Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
Formular mehrfach anzeigen- schleife; daten gehn verloren [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
Formular mehrfach anzeigen- schleife; daten gehn verloren


 
georg87
06-08-2006, 20:21 
 
Hallo allerseits, habe folgendes Problem und bin um jeden Ratschlag dankbar!
Habe ein Formular, der User kann hier seine Daten eingeben (für eine Bestellung). Das gleiche Formular soll öfters (nun 8 mal) dargestellt werden, dies erreiche ich mit einer Schleife. Durch die Variable a erreiche ich 8 unabhängige Namen dafür. Das Formular enthält ein DropDown Menü, wenn man hier die Auswahl ändert, aktualisiert sich automatisch die Seite. Hier ist nun das Problem, da bereits eingegebene Daten dann verloren gehn. Wenn ich sie auslese mittels $_GET dann bekomme ich jeweils nur ein Formular wieder ausgefüllt. Hat irgendwer eine Idee wie es funktionieren könnte dass alle Einträge vorhanden bleiben?
Und das automatische aktualisieren beim DropDown ist unbedingt notwendig, da hier noch eine Preiskalkulation folgt!
<?php
$anzahl = 8;
for($a=0;$a<=$anzahl;$a++) {

$art = $_GET['art'.$a];
echo $art;
?>
<form name="buchen<? echo $a; ?>" method="get" action="#">

<select name="art<? echo $a; ?>" onChange="document.buchen<? echo $a; ?>.submit();">

<option value="001" <?php if($art.$a=="001") {echo "selected";} ?>>
Auswahl (art) 1
</option>
<option value="002" <?php if($art.$a=="002") {echo "selected";} ?>>
Auswahl (art) 2
</option>
<option value="003" <?php if($art.$a=="003") {echo "selected";} ?>>
Auswahl (art) 3
</option>
<option value="004" <?php if($art=="004") {echo "selected";} ?>>
Auswahl (art) 4
</option>

</select>





Anrede: Herr <input name="anrede<? echo $a; ?>" type="radio" value="Herr">Frau<input name="anrede" type="radio" value="Frau"><br>
Vorname: <input name="vorname<? echo $a; ?>" type="text" value="<? echo $_GET["vorname".$a]; ?>"><br>
Nachname: <input name="nachname<? echo $a; ?>" type="text" value="<? echo $_GET["nachname".$a]; ?>"><br>
Geburtsdatum: <input name="geburtsdatum<? echo $a; ?>" type="text" value="<? echo $_GET["geburtsdatum".$a]; ?>"><br>
</form>
<? } ?>
Bin für jeden Ratschlag dankbar!

 
penizillin
06-08-2006, 20:24 
 
die bastelei mit dem $a birgt probleme.
benutze die array-schreibweise: <input name="vorname[]" ... etc.

 
georg87
06-08-2006, 21:37 
 
okay danke, mach ich! jedoch lösen tut dies das problem auch noch nicht...

 
georg87
06-08-2006, 23:02 
 
ich schaffs auch nicht das array richtig anzuwenden ;(
hab die input felder anstatt mit dem $a..., wie von dir beschrieben ersetzt, genauso das select menü, nur bei dem js teil hab ich ein problem ,da brauch ich dann doch wieder meine lösung oder?
habs dann so ausgelesen:
foreach ($vorname as $elem) {

echo "$elem<br>";

}
ist jedoch nur ein eintrag dann vorhanden, das könnte aber auch wegen den js menü zu tun haben?

 
georg87
07-08-2006, 14:22 
 
hallo,
habe nun noch einige stunden an dem script gebastelt, nun funktioniert alles, bis auf die autoamtische aktualisierung (d.h. wenn man aus dem dropdown menü einen eintrag ändert... woran kann das liegen? das aktuelle script: (nun mit sessions)
<?php

for($var=1; $var<=8;$var++) {
if(isset($_GET['art'.$var])) {
$_SESSION['art'.$var] = $_GET['art'.$var]; }
if(isset($_GET['anrede'.$var])) {
$_SESSION['anrede'.$var] = $_GET['anrede'.$var]; }
if(isset($_GET['vorname'.$var])) {
$_SESSION['vorname'.$var] = $_GET['vorname'.$var]; }
if(isset($_GET['nachname'.$var])) {
$_SESSION['nachname'.$var] = $_GET['nachname'.$var]; }

}

?>
<form name="buchen" method="get" action="<? $PHP_SELF ?>"> <?
for($a=1; $a<=8; $a++) {
?>

<select name="art<? echo $a; ?>" onChange="document.buchen.submit();">
<option value="001" <?php if($_SESSION['art'.$a]=="001") {echo "selected";} ?>>Auswahl 1</option>
<option value="002" <?php if($_SESSION['art'.$a]=="002") {echo "selected";} ?>>Auswahl 2</option>
<option value="003" <?php if($_SESSION['art'.$a]=="003") {echo "selected";} ?>>Auswahl 3</option>
<option value="004" <?php if($_SESSION['art'.$a]=="004") {echo "selected";} ?>>Auswahl 4</option>
<option value="005" <?php if($_SESSION['art'.$a]=="005") {echo "selected";} ?>>Auswahl 5</option>
</select>

Anrede: Herr <input name="anrede<? echo $a;?>" type="radio" value="Herr" <?php if($_SESSION['anrede'.$a]=="Herr") { echo "checked";} ?>>
Frau<input name="anrede<? echo $a;?>" type="radio" value="Frau" <?php if($_SESSION['anrede'.$a]=="Frau") { echo "checked";} ?>><br>
Vorname: <input name="vorname<? echo $a;?>" type="text" value="<? echo $_SESSION['vorname'.$a]; ?>"><br>
Nachname: <input name="nachname<? echo $a;?>" type="text" value="<? echo $_SESSION['nachname'.$a]; ?>"> <br><br>
<? } ?>

<input name="submit" type="submit" value="absenden">
</form>

- -

Alle Zeitangaben in WEZ +2. Es ist jetzt 18:11 Uhr.