Paul Styrnol: Mehrere input-Felder gleichen Namens verarbeiten

Beitrag lesen

Hallo,

Je nachdem, wie der Abfragequery gestaltet ist (Sortierung), kann es sein, dass die vierte Zeile der HTML-Tabelle innerhalb des Formulars nicht der vierten Zeile in der DB-Tabelle entspricht.

Man sollte also noch eine eindeutige ID der Zeile (die aus der DB-Tabelle) mitgeben.

Die resultierende Ausgabe sollte für die Zeile mit der ID "3" so aussehen (ungetestet):

<input id="gname[3]" name="gname[3]" value="blabla">

hab das jetzt mal so oder so ähnlich versucht.

Die Ausgabe der Tabelle in der Seite (Original Auszug):
<tr>
<td><input type="checkbox" name="gdelete[]" value="4"></td>
<td><input id="gname" name="gname[4]" value="anorexia"></td>
<td><input id="gtitel" name="gtitel[4]" value="»anorexia nervosa«"></td>
<td><input type="checkbox" name="gvisible[]" value="4"></td>
<td>2005-06-20</td>
</tr>

Der PHP/SQL-Code zum Verarbeiten und Ändern der Daten:

$i = 0;
foreach($_POST["gname"] as $bla) {
  $a_id = $_POST["visible"][$i];
  $result = mysql_query("UPDATE album SET name = '" . $_POST["gname"][$i] . "', titel = '" . $_POST["gtitel"][$i] . "', sichtbar = '0' WHERE a_id = '" . $a_id . "';");
  $i++;
}

Als Argument für die foreach-Schleife hatte ich zuerst gvisible (die Checkbox als $a_id, aber da kam eine Fehlermeldung (Invalid argument).
Passieren tut leider immernoch nicht viel. :(

Viele Grüße
Paul

--
Meine Photos:  http://www.rapunzeln.de
Meine Tribals: http://www.tribal-galerie.de