Hallo,
ich habe ein "kleines" Problem und zwar möchte ich ein Formular erstellen mit dem eine variable Anzahl von Datensätzen in eine Datenbank geschrieben werden.
Funktionsprinzip:
Ich habe eine Auswahlmöglichkeit wie viele Mannschaften in die Datenbank eingetragen werden sollen. Je nach Eingabe erscheint dann ein Formular in dem entsprechend viele Felder zum eintragen der Mannschaften wie eingegeben erscheinen.
Das klappt auch soweit ganz gut.
Kommen wir zum eigentlichen Problem:
Man könnte das ganze recht unflexibel lösen indem man für jede Variable einen extra Eintag macht:
und das eintragen in die Datenbank mit:
Da man aber 12-24 Mannschaften eintragen können soll ist das sehr schreibintensiv und sehr viel Quellcode.
Ich würde den unteren Code gerne genauso flexibel gestalten wie das Formular oben.
Ich habe schon versucht den Teil mit dem Eintragen in die Datenbank folgendermaßen zu lösen:
Allerdings wird dadurch leider nicht die Variable erzeugt die ich brauche. Für $eintr steht dann zwar das passende $eintragen1 allerdings wird es nicht als Variable erkannt.
Den Part darüber würde ich auch gerne Variabel gestalten aber leider finde ich keinen Weg der Funktioniert.
Ich hoffe ihr habt ein paar hilfreiche Tipps für mich. Vllt habe ich ja auch nen kompletten Denkfehler drin und das ganze geht anders ganz einfach....
Gruß
ich habe ein "kleines" Problem und zwar möchte ich ein Formular erstellen mit dem eine variable Anzahl von Datensätzen in eine Datenbank geschrieben werden.
Funktionsprinzip:
Ich habe eine Auswahlmöglichkeit wie viele Mannschaften in die Datenbank eingetragen werden sollen. Je nach Eingabe erscheint dann ein Formular in dem entsprechend viele Felder zum eintragen der Mannschaften wie eingegeben erscheinen.
Code:
$anz=$_GET['anz']; echo " <b>Mannschaften eintragen:</b><br> ==================================<br><br> <form action='$PHP_SELF' method='post'> <table>"; for ($i=1; $i<=$anz; $i++) { echo " <tr> <td>Mannschaft $i:</td> <td><input type='text' name='Mannschaft$i' size='25'></td> <td><input type='hidden' name='ID$i' value='$i'></td> </tr>"; } echo " </table> <input type='submit' value='Anlegen' name='anlegen'> </form>";
Kommen wir zum eigentlichen Problem:
Man könnte das ganze recht unflexibel lösen indem man für jede Variable einen extra Eintag macht:
Code:
$ID1=$_POST['ID1']; $Mannschaft1=$_POST['Mannschaft1']; $ID2=$_POST['ID2']; $Mannschaft2=$_POST['Mannschaft2']; ... usw...
Code:
if(isset($_POST['anlegen'])) { $eintragen1="INSERT INTO mannschaften (ID, Mannschaft) VALUES ('$ID1', '$Mannschaft1')"; $eintragen2="INSERT INTO mannschaften (ID, Mannschaft) VALUES ('$ID2', '$Mannschaft2')"; ...usw... mysql_query($eintragen1) or die(mysql_error()); mysql_query($eintragen2) or die(mysql_error()); ..usw... }
Ich würde den unteren Code gerne genauso flexibel gestalten wie das Formular oben.
Ich habe schon versucht den Teil mit dem Eintragen in die Datenbank folgendermaßen zu lösen:
Code:
for ($i=1; $i<=$anz; $i++) { $eintr="$".eintragen.$i; mysql_query($eintr) or die(mysql_error()); }
Den Part darüber würde ich auch gerne Variabel gestalten aber leider finde ich keinen Weg der Funktioniert.
Ich hoffe ihr habt ein paar hilfreiche Tipps für mich. Vllt habe ich ja auch nen kompletten Denkfehler drin und das ganze geht anders ganz einfach....
Gruß
Kommentar