15. April 200322 j So siehts zur zeit aus zwar nicht super sortiert aber ich hoffe das es geht <html><head></head> <script language="JavaScript" > function chk(chki) { document.formname.chk[0].checked=true; } </script> <body> <? include ("../iconfig.php"); $db = @MYSQL_CONNECT($db_server,$db_user,$db_passwort) or die ("Konnte keine Verbindung zur Datenbank herstellen"); $db_check = @MYSQL_SELECT_DB($db_name); ?> <form action="admin.php" method="post"> <select name='wahl' size='1'> <? $tmp = mysql_query("SELECT Ally FROM $mysql_tablename GROUP BY Ally"); while ($temp = mysql_fetch_row($tmp)){ echo "<option value='".$temp[0]."'"; if($wahl==$temp[0])echo "selected"; echo">".$temp[0]."</option>"; } ?> <option value='alle'<? if ($wahl=="alle") echo "selected";?>>Alle</option> <option value='dhdb'<? if ($wahl=="dhdb") echo "selected";?>>Ally</option> <option value='bund'<? if ($wahl=="bund") echo "selected";?>>Bündnisse</option> <option value='feind'<? if ($wahl=="feind") echo "selected";?>>Feinde</option> <option value='plund'<? if ($wahl=="plund") echo "selected";?>>Leichte Beute</option> </select> <input name="ok" type="submit" value="OK"> </form> <? $remp=$wahl; if ($wahl==""){$wahl='';} else if ($wahl=="alle"){$wahl='';} else if ($wahl=="dhdb"){$wahl='WHERE member=1';} else if ($wahl=="bund"){$wahl='WHERE member=2';} else if ($wahl=="feind"){$wahl='WHERE member=3';} else if ($wahl=="plund"){$wahl='WHERE member=4';} else {$wahl="WHERE Ally='$wahl'";} if ($action!="" ){ $tmp = mysql_query("SELECT COUNT(*) FROM $mysql_tablename $wahl"); $count = mysql_fetch_row($tmp); } $dhdb = mysql_query("SELECT * FROM $mysql_tablename $wahl ORDER BY Ally,name ASC"); echo '<form name="formname" action="admin.php" method="post"><input type="hidden" name="wahl" value="'.$remp.'">'; echo '<table><tr><td>Änderung</td><td>Name</td><td>Ally</td><td>Ozean</td><td>Gruppe</td><td>Insel</td></tr>'; $i=0; echo ''; while ($ausgabe = mysql_fetch_array($dhdb)) { echo '<tr><td><center><input type="checkbox" name="chk['.$i.']"></center></td><td><input name=name'.$i.'" type="text" size="15" maxlength="40" value="'.$ausgabe['name].'" onChange="chk(\'chk['.$i.']\') "><input type=hidden" name="hidename'.$i.'" value="'.$ausgabe['name].'"></td><td><input name="ally'.$i.'" type="text" size="8" maxlength="40" value="'.$ausgabe['Ally'].'" onChange=chk(\'chk'.$i.'\') "><input type="hidden" name="hideally'.$i.'" value="'.$ausgabe['Ally].'"></td><td><input type="text" name="ozean'.$i.'" size="1" maxlength="3" value="'.$ausgabe['ozean'].'" onChange=chk(\'chk'.$i.'\') "><input type="hidden" name="hideozean'.$i.'" value="'.$ausgabe['ozean].'"></td><td><input name="gruppe'.$i.'" type="text" size="1" maxlength="3" value="'.$ausgabe['gruppe'].'" onChange=chk(\'chk'.$i.'\')"><input type="hidden" name="hidegruppe'.$i.'" value="'.$ausgabe['gruppe].'"></td><td><input name="insel'.$i.'" type="text" size="1" maxlength="3" value="'.$ausgabe['insel'].'" onChange=chk(\'chk'.$i.'\') "><input type="hidden" name="hideinsel'.$i.'" value="'.$ausgabe['insel].'"></td></tr>'; $i++; } echo '</table>'; echo '<input name="action" type="submit" value="Ändern">'; echo '<input name="action" type="submit" value="Löschen"></form>'; ?></body></html>
15. April 200322 j Sorry, aber wie ich bereits erwähnt habe, habe ich keine Ahnung von php. Ich habe zwar versucht, das zu verstehen, kann aber die Stelle nicht finden, an der du die besagte Auswertung vornimmst.
16. April 200322 j Auswertung??? du meinst wo ich schaue ob die checkbox selectiert ist??? Das ist auch noch nicht drin denn als ich das gelesen hab wie das gehen soll hab ich erstmal den namen in ein array umgewandelt und da dort schon ein fehler war wollt ich den erstmal beheben.
16. April 200322 j Ok, jetzt habe ich den Code so geändert, dass du sie aus php evtl. als Array ansprechen kannst. Und zwar habe ich den Checkboxen jetzt einfach denselben Namen gegeben, ich denke, dann werden sie als Array behandelt: <html> <head> <title>Testformular</title> <script type="text/javascript"> <!-- function chk (index) { eval ("document.testform.check[" + index + "].checked=true;"); } function submitform() { alert ("Checkbox 1 checked: " + document.testform.check[0].checked); alert ("Checkbox 2 checked: " + document.testform.check[1].checked); alert ("Checkbox 3 checked: " + document.testform.check[2].checked); } // --> </script> </head> <body> <form name="testform" action="javascript:submitform();"> <table> <tr> <td>Checkbox 1:</td> <td><input type="checkbox" name="check"></td> </tr> <tr> <td>Checkbox 2:</td> <td><input type="checkbox" name="check"></td> </tr> <tr> <td>Checkbox 3:</td> <td><input type="checkbox" name="check"></td> </tr> <tr> <td colspan="2"><hr></td> </tr> <tr> <th colspan="2">Reihe 1</th> </tr> <tr> <td>Input 1.1:</td> <td><input type="text" name="input_1_1" onchange="chk(0)"></td> </tr> <tr> <td>Input 1.2:</td> <td><input type="text" name="input_1_2" onchange="chk(0)"></td> </tr> <tr> <td>Input 1.3:</td> <td><input type="text" name="input_1_3" onchange="chk(0)"></td> </tr> <tr> <th colspan="2">Reihe 2</th> </tr> <tr> <td>Input 2.1:</td> <td><input type="text" name="input_2_1" onchange="chk(1)"></td> </tr> <tr> <td>Input 2.2:</td> <td><input type="text" name="input_2_2" onchange="chk(1)"></td> </tr> <tr> <td>Input 2.3:</td> <td><input type="text" name="input_2_3" onchange="chk(1)"></td> </tr> <tr> <th colspan="2">Reihe 3</th> </tr> <tr> <td>Input 3.1:</td> <td><input type="text" name="input_3_1" onchange="chk(2)"></td> </tr> <tr> <td>Input 3.2:</td> <td><input type="text" name="input_3_2" onchange="chk(2)"></td> </tr> <tr> <td>Input 3.3:</td> <td><input type="text" name="input_3_3" onchange="chk(2)"></td> </tr> <tr> <td colspan="2"><input type="submit" value="OK"/></td> </form> </body> </html>
16. April 200322 j Dann kann ich mein PHP ja doch noch anbringen. Also wenn du beim echo einfache Anführungszeichen verwendest( ' statt " ), werden die Variablen im Argument nicht interpretiert. Folglich steht da chk[$i], womit JavaScript wenig anfangen kann. Probiers mal mit " und klammere die Anführungszeichen, die fürs HTML benötigt werden, mit einem Backslash aus. So etwa: \" Dann schreibst du für jedes onchange noch onchange=\"chk[$i]\" und dann postest du, obs funktioniert hat. Apropos, wenn du die Riesen echo-Anweisung innerhalb der Schleife in mehrere Teile aufteist, wirds bedeutend übersichtlicher. So wie es jetzt ist, hast du spätestens nach einer Woche keine Ahnung mehr, wie es gemeint war. :uli
16. April 200322 j Original geschrieben von jomama Apropos, wenn du die Riesen echo-Anweisung innerhalb der Schleife in mehrere Teile aufteist, wirds bedeutend übersichtlicher. So wie es jetzt ist, hast du spätestens nach einer Woche keine Ahnung mehr, wie es gemeint war. :uli Ich weiß ds will ich auch noch mal ändern Wenn ich das so probiere wie ich es jetzt hab und in der JS funktion ein alert mache zeigt der mir aber richtig den wert an und zwar chk[0]
16. April 200322 j Hmmm, in der Form war mir das noch nicht bekannt. Ein bisschen mehr übersichtlichkeit würde beim Fehlerfinden helfen. Frag mal folgendes ab. if(document.DeinFormular.chk[0].checked == true){alert "Checkbox checked";} Bringt der da schon Fehler?
16. April 200322 j In meinem Beispielcode habe ich das bereits implementiert (function "submitform()"). Damit geht es, wenn die Checkboxen alle gleich benannt sind.
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.