Witam,
Przygotowałem tabelę HTML wyświetlająca pliki.
Jak widać na screenie powyżej każdy wiersz posiada osobny przycisk z wartością wskazującą na osobne pliki.
Niestety, który przycisk bym nie kliknął, to i tak do kolejnej strony zostanie przekazana nazwa ostatniego pliku.
Czy mogę prosić o poradę dlaczego tak się dzieje i jak to rozwiązać?
Pozdrawiam
Poniżej fragment kodu:
http://www.php.net/echo "<form action='download.php' method='POST'>"; http://www.php.net/echo "<table> <tr> <th>Dokument</th> <th>Pobierz</th> <th>Pobierz i Usuń</th> </tr>"; foreach(http://www.php.net/glob("$folder_magazynu" . "$ukosnik" . $biezacy_zaszyfrowany_ows . "$ukosnik" . "*.*" ) as $dokument) { //rozbijam całą ścieżkę w celu wyodrębnienia nazwy pliku list ($folder_magazynu, $biezacy_zaszyfrowany_ows, $nazwa_pliku) = http://www.php.net/explode ("$ukosnik", $dokument); // rozbijam nazwę pliku na poszczególne pola //list ($z_jakiej_jednostki, $sygnatura, $typ_dokumentu, $data_przeslania, $godzina_przeslania, $rozszerzenie_pliku) = explode ($_SESSION["znak_rozdzielajacy_w_nazwie_pliku"], $nazwa_pliku); http://www.php.net/echo "<tr>"; http://www.php.net/echo "<td> $nazwa_pliku </td>"; http://www.php.net/echo "<td span style='text-align: center;'> <a href='" . $dokument . "' download> ↓ </a></td>"; http://www.php.net/echo "<td span style='text-align: center;'> <input type='hidden' id='fileToDelete' name='fileToDelete2' value='" . $dokument . "' > <input type='submit' value='Usuń'> </td>"; http://www.php.net/echo "</tr>"; } http://www.php.net/echo "</table>"; http://www.php.net/echo "</form>";
Bo generujesz formularz z wieloma polami o tej samej nazwie, tj. fileToDelete2.
FORM masz generowac dla kazdego wiersza a nie jeden FORM na cala tabele
Form ma byc poza pętlą. Jeden form a zamiast input type=submit to dajesz
http://www.php.net/print "<button type=\"submit\" name=\"usun\" value=\"" . $dokument . "\"> Usuń wpis</button>";
Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)