Nach dem Absenden meines Formulars tut sich nichts in der DB.
Zur Erklärung: Für jede Checkbox soll ein Datensatz nach folgendem Muster in die DB eingetragen werden:
Feld 1 Feld 2 Feld 3
FondsNr lfd_nr status
Bei angehackter Checkbox wird eine 1 in das Feld "status" geschrieben.
Bei nicht angehackter Checkbox wird eine 0 in das Feld "status" geschrieben.
Wo liegen der oder die Fehler in meinem Code ???
Bin leider kein "form-Experte" !
Hier mein Formular:
echo '<form action="streichen.php" method="post">';
echo '<table border=1>';
// Ausgabe des Tabellenkopfes
echo '<tr><td ALIGN=center colspan="2"><FONT SIZE=2 FACE=ARIAL><B>'.$kurz.'</B></FONT></td></tr>';
// Ausgabe der Tabellenzeilen
while ($line=mysql_fetch_array($result1)) {
echo '<tr><td>'.$line['lfd_nr'].'</td>
<td>
<INPUT type="hidden" name="Fonds[]" value='.$line['FondsNr'].'>
<INPUT type="hidden" name="LfdNr[]" value='.$line['lfd_nr'].'>
<INPUT type="checkbox" name="box[]" value="1" '.($line['status']==1 ? " checked" : "").'></td></tr>';
}
echo '</table>';
?>
<input type=submit value="streichen"></form>
Hier der verarbeitende Code:
$records="";
foreach ( $_POST["Fonds"] AS $key=>$value ) {
$records.=($records==""?"":",")."(".$value.",".$_POST["LfdNr"][$key].",".( isset($_POST["box"][$key]) ? "1" : "0" ).")";
}
mysql_query("REPLACE INTO streichliste (FondsNr, lfd_nr, status) VALUES $records");
Siehe auch: http://www.rok.formativ.net/form1.php
Zur Erklärung: Für jede Checkbox soll ein Datensatz nach folgendem Muster in die DB eingetragen werden:
Feld 1 Feld 2 Feld 3
FondsNr lfd_nr status
Bei angehackter Checkbox wird eine 1 in das Feld "status" geschrieben.
Bei nicht angehackter Checkbox wird eine 0 in das Feld "status" geschrieben.
Wo liegen der oder die Fehler in meinem Code ???
Bin leider kein "form-Experte" !
Hier mein Formular:
echo '<form action="streichen.php" method="post">';
echo '<table border=1>';
// Ausgabe des Tabellenkopfes
echo '<tr><td ALIGN=center colspan="2"><FONT SIZE=2 FACE=ARIAL><B>'.$kurz.'</B></FONT></td></tr>';
// Ausgabe der Tabellenzeilen
while ($line=mysql_fetch_array($result1)) {
echo '<tr><td>'.$line['lfd_nr'].'</td>
<td>
<INPUT type="hidden" name="Fonds[]" value='.$line['FondsNr'].'>
<INPUT type="hidden" name="LfdNr[]" value='.$line['lfd_nr'].'>
<INPUT type="checkbox" name="box[]" value="1" '.($line['status']==1 ? " checked" : "").'></td></tr>';
}
echo '</table>';
?>
<input type=submit value="streichen"></form>
Hier der verarbeitende Code:
$records="";
foreach ( $_POST["Fonds"] AS $key=>$value ) {
$records.=($records==""?"":",")."(".$value.",".$_POST["LfdNr"][$key].",".( isset($_POST["box"][$key]) ? "1" : "0" ).")";
}
mysql_query("REPLACE INTO streichliste (FondsNr, lfd_nr, status) VALUES $records");
Siehe auch: http://www.rok.formativ.net/form1.php
Kommentar