Witam mój problem jest podobny, wiec nie zakładam nowego tematu. Chodzi mi o to ze na stronie poprzez pętle for wypisuje sobie utwory, które są w bazie i utwory które sobie wybieram poprzez checkboxa chcę dodać do jednej płyty (wybór może być wielokrotny) niestety nie chce mi to zbytnio działać.
<h2><center>Baza danych utworów</center></h2>
<?php
$pl_idplyta = $_GET['idplyta'];
$query = "SELECT * FROM utwor";
echo "<p><center>Liczba utworów w bazie: $num_result</center></p>";
<table width = "70%" border = "1" cellpadding="2"
cellspacing = "2" align = "center">
<tr>
<th>ID</th>
<th>Wykonawca</th>
<th>Tytuł</th>
<th>Wersja</th>
<th>Gatunek</th>
<th>Czas trwania</th>
<th>Dodaj do płyty</th>
<tr>';
for ($i=0; $i < $num_result; $i++)
{
$idutwor = $row["idutwor"];
$wykonawca = $row["wykonawca"];
$tytul_utworu = $row["tytul_utworu"];
$wersja = $row["wersja"];
$gatunek = $row["gatunek"];
$czas_trwania = $row["czas_trwania"];
<td>'.$idutwor.'</td>
<td>'.$wykonawca.'</td>
<td>'.$tytul_utworu.'</td>
<td>'.$wersja.'</td>
<td>'.$gatunek.'</td>
<td>'.$czas_trwania.'</td>
<td><form method="post" action="index.php?op=plyta_widok&idplyta='.$pl_idplyta.'">
<input type="checkbox" name="dodaj_ut[]" value="'.$idutwor[0].'"/>
</td>
</tr>';
}
<br>
<center><input type="submit" name="submit2" value="Dodaj" /></center>
</form>';
if (isset($_POST['submit2'])) {
$ut_dodaj = $_POST['dodaj_ut'];
$zlicz = count($ut_dodaj);
for ($j=0; $j < $zlicz; $j++)
{
$query = "INSERT INTO pozycja_plyty VALUES(NULL, '$idutwor[$j]', '$pl_idplyta')";
}
}
?>
Struktura tabeli pozycja_plyty:
CREATE TABLE pozycja_plyty (
idpozycja_plyty INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
utwor_idutwor INTEGER UNSIGNED NOT NULL,
plyta_idplyta INTEGER UNSIGNED NOT NULL,
PRIMARY KEY(idpozycja_plyty),
INDEX pozycja_plyty_FKIndex1(plyta_idplyta),
INDEX pozycja_plyty_FKIndex2(utwor_idutwor),
FOREIGN KEY(plyta_idplyta)
REFERENCES plyta(idplyta)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
FOREIGN KEY(utwor_idutwor)
REFERENCES utwor(idutwor)
ON DELETE NO ACTION
ON UPDATE NO ACTION
);
EDIT:
Ok jakoś sobie poradziłem, źle wysyłałem formularz zamiast
action="index.php?op=plyta_widok&idplyta='.$pl_idplyta.'"
miało być
action="index.php?op=utw_dod_plyt&idplyta='.$pl_idplyta.'"
i tam parę innych jeszcze błędów znalazłem

zamiast
<input type="checkbox" name="dodaj_ut[]" value="'.$idutwor[0].'"/>
miało być
<input type="checkbox" name="dodaj_ut[]" value="'.$row[0].'"/>
oraz zamiast
$query = "INSERT INTO pozycja_plyty VALUES(NULL, '$idutwor[$j]', '$pl_idplyta')";
to tak
$query = "INSERT INTO pozycja_plyty VALUES(NULL, '$ut_dodaj[$j]', '$pl_idplyta')";
Jeżeli ktoś miałby jakieś propozycje zapraszam