Hallo!
Ist es möglich mit PHP folgendes zu erreichen
Ich hab ein bestehendes Formular wo ein user daten eingeben kann die dann nach "validation" vom siteadmin auf der Website angezeigt werden. Nun wurde aber vermehrt darum gebeten das man doch evtl. noch mehr daten eingeben könne. Hier nun meine Frage: Wie müsste ich anfangen wenn ich in das bestehende Formular zb. 2 checkboxen einbauen möchte die wenn man eines anklickt weitere 10 Formularfelder anzeigen, wenn man es wieder "de-klickt" werden wieder die default Anzahl Felder angezeigt.
Um das ganze ein bisschen deutlicher zu machen (hoffe ich wenigstens) hier der komplette code der das Formular erzeugt, es handelt sich dabei um ein Formular bei dem man sein Collectible Card Game Deck (Ein Sammelkarten Spiel basiert auf der Welt von J.R.R. Tolkien) eingeben kann (ist sehr gross, aber die user wollen es noch grösser).
function AddDeck() { include("header.php"); echo"<!--INDIVIDUAL BLOCKS--> <table border="0" align="center" cellspacing="0" cellpadding="0" width="90%"> <tr> <td class="type0">";
echo ("<table border="0" width="80%" cellspacing="0" cellpadding="0">"); echo ("<tr><td valign="top" width="5" height="5"><img src="./themes/Shaffer/images2/corner_left_top.gif" border="0"></td> <td width="*" height="5" background="./themes/Shaffer/images2/black_pixel.gif"></td> <td valign="top" width="5" height="5"><img src="./themes/Shaffer/images2/corner_right_top.gif" border="0"></td></tr>");
echo ("<tr><td class="type5" width="5" background="./themes/Shaffer/images2/black_pixel.gif">" ." " . "</td><td class="title" background="./themes/Shaffer/images2/black_pixel.gif">" . "Add Deck" . help("Add Deck") . "</td><td width="5" background="./themes/Shaffer/images2/black_pixel.gif"></td></tr></table>");
echo"<table width="100%" border="0" cellspacing="1" cellpadding="3"> <tr> <td class="type5">Fields marked with an <span class="star"></span> are required. </td></tr> <tr> <td class="type5"><form method="post" action="decks.php?op=Add"> <table width="100%" border="0"><tr> <td class="type5">Deck Title:</td><td class="type5"><input type="text" name="title" size="50" maxlength="100" /><span class="star"></span></td></tr> <tr><td class="type5">Your Name:</td><td class="type5"><input type="text" name="name" size="30" maxlength="60" /><span class="star"></span></td></tr> <tr><td class="type5">Your Email:</td><td class="type5"><input type="text" name="email" size="30" maxlength="60" /><span class="star"></span></td></tr></table> Short Description: (255 characters max) <span class="star"></span><br /><textarea name="description" cols="60" rows="5" wrap="virtual"></textarea><br /><br /> Long Description: <span class="star"></span><br /><textarea name="longdescription" cols="60" rows="5" wrap="virtual"></textarea><br /><br /> </td></tr> <tr><td class="type5"> <table width="100%" border="0"> <tr><td class="type5" width="20%">Starting Character 1:</td><td class="type5" width="22%"><input type="text" name="startchar1" size="20" maxlength="60" /></td> <td class="type5" width="70"> Item 1:</td><td class="type5"><input type="text" name="startitem1" size="20" maxlength="60" /></td> </tr> <tr><td class="type5" width="20%">Starting Character 2:</td><td class="type5"><input type="text" name="startchar2" size="20" maxlength="60" /></td> <td class="type5" width="70"> Item 2:</td><td class="type5"><input type="text" name="startitem2" size="20" maxlength="60" /></td> </tr></table><br /></td></tr> <tr><td class="type5"> <table width="100%" border="0"> <tr><td class="type5" width="40%">The rest of the <b>Starting</b> Characters<br /><textarea name="startingchars" cols="30" rows="5" wrap="virtual"></textarea></td> <td class="type5">Character Pool (ie. characters to be put in deck)<br /><textarea name="characterpool" cols="30" rows="5" wrap="virtual"></textarea></td></tr> </table></td></tr>
<tr> <td class="type5"> Resources: <br /></td></tr>"; echo "<table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr><td class="type5">"; $res = 0; while($res<9) { $res++; echo " $res. <input type=text size=15 maxlength=60 name=res".$res."><br>"; } echo "10.<input type=text size=15 maxlength=60 name="res10"><br></td>";
echo "<td class="type5">";
$res1 = 10; while($res1<20) { $res1++; echo " $res1. <input type=text size=15 maxlength=60 name=res".$res1."><br>"; } echo "</td>";
echo "<td class="type5">";
$res2 = 20; while($res2<30) { $res2++; echo " $res2. <input type=text size=15 maxlength=60 name=res".$res2."><br>"; } echo "</td></tr></table>";
echo "<tr><td class="type5"><br />Hazards: <br /></td></tr>"; echo "<tr><td>"; echo "<table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr><td class="type5">"; $haz = 0; while($haz<9) { $haz++; echo " $haz. <input type=text size=15 maxlength=60 name=haz".$haz."><br>"; } echo "10.<input type=text size=15 maxlength=60 name="haz10"><br></td>";
echo "<td class="type5">";
$haz1 = 10; while($haz1<20) { $haz1++; echo " $haz1. <input type=text size=15 maxlength=60 name=haz".$haz1."><br>"; } echo "</td>";
echo "<td class="type5">";
$haz2 = 20; while($haz2<30) { $haz2++; echo " $haz2. <input type=text size=15 maxlength=60 name=haz".$haz2."><br>"; } echo "</td>";
echo "</tr></table>";
echo "<tr><td class="type5"><br />Sideboard: <br /></td></tr>"; echo "<tr><td>"; echo "<table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr><td class="type5">"; $side = 0; while($side<9) { $side++; echo " $side. <input type=text size=15 maxlength=60 name=side".$side."><br>"; } echo "10.<input type=text size=15 maxlength=60 name="side10"><br></td>";
echo "<td class="type5">";
$side1 = 10; while($side1<20) { $side1++; echo " $side1. <input type=text size=15 maxlength=60 name=side".$side1."><br>"; } echo "</td>";
echo "<td class="type5">";
$side2 = 20; while($side2<30) { $side2++; echo " $side2. <input type=text size=15 maxlength=60 name=side".$side2."><br>"; } echo "</td>";
echo "</tr></table>";
echo"<tr><td class="type5">
<input type="hidden" name="op" value="Add" /> <center><br /><input type="submit" value="Submit" /></center><br /> </form></td></tr></table></td></tr></table><br />"; $maindeck = 1; menu($maindeck); include("footer.php"); }
Ich weiss nicht ob es Sinn macht das ich den code hier rein gepostet habe, hoffe schon.
Hier ist die URL wo man das Formular sieht. http://www.thebounceroom.com/decks.php?op=AddDeck (Bitte das Javascript fertig arbeiten lassen) Wenn sich jemand die Zeit nimmt um mir zu helfen dann guckt euch doch bitte die Stelle an wo man RESOURCES (30 karten) und HAZARDS (30 karten) eingeben kann, den as sind die 2 stellen wo ich das mit den checkboxen machen möchte. Sprich, so wie es jetzt ist kann man 30 Karten eingeben, klickt man jedoch eine checkbox an kann man 40 Karten eingeben, klickt man beide an kann man 50 karten eingeben. Ich möchte das ganze jedoch bevorzugt OHNE JAVASCRIPT ermöglichen wenn geht.
Ich bedanke mich schon mal im voraus für etwaige tips und hilfe.
Liebe Grüße,
Jürgen