Drukowana wersja tematu

Kliknij tu, aby zobaczyć temat w orginalnym formacie

Forum PHP.pl _ Przedszkole _ [HTML]Tabela listująca pliki z przyciskami do ich usuwania

Napisany przez: kolaborek 15.04.2021, 12:06:24

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:

  1. http://www.php.net/echo "<form action='download.php' method='POST'>";
  2. http://www.php.net/echo "<table>
  3. <tr>
  4. <th>Dokument</th>
  5. <th>Pobierz</th>
  6. <th>Pobierz i Usuń</th>
  7. </tr>";
  8.  
  9. foreach(http://www.php.net/glob("$folder_magazynu" . "$ukosnik" . $biezacy_zaszyfrowany_ows . "$ukosnik" . "*.*" ) as $dokument) {
  10. //rozbijam całą ścieżkę w celu wyodrębnienia nazwy pliku
  11. list ($folder_magazynu, $biezacy_zaszyfrowany_ows, $nazwa_pliku) = http://www.php.net/explode ("$ukosnik", $dokument);
  12.  
  13. // rozbijam nazwę pliku na poszczególne pola
  14. //list ($z_jakiej_jednostki, $sygnatura, $typ_dokumentu, $data_przeslania, $godzina_przeslania, $rozszerzenie_pliku) = explode ($_SESSION["znak_rozdzielajacy_w_nazwie_pliku"], $nazwa_pliku);
  15.  
  16. http://www.php.net/echo "<tr>";
  17. http://www.php.net/echo "<td> $nazwa_pliku </td>";
  18.  
  19. http://www.php.net/echo "<td span style='text-align: center;'> <a href='" . $dokument . "' download> &darr; </a></td>";
  20.  
  21. http://www.php.net/echo "<td span style='text-align: center;'>
  22. <input type='hidden' id='fileToDelete' name='fileToDelete2' value='" . $dokument . "' >
  23. <input type='submit' value='Usuń'>
  24. </td>";
  25.  
  26. http://www.php.net/echo "</tr>";
  27. }
  28.  
  29. http://www.php.net/echo "</table>";
  30. http://www.php.net/echo "</form>";




Napisany przez: trueblue 15.04.2021, 12:11:43

Bo generujesz formularz z wieloma polami o tej samej nazwie, tj. fileToDelete2.

Napisany przez: nospor 15.04.2021, 12:23:12

FORM masz generowac dla kazdego wiersza a nie jeden FORM na cala tabele

Napisany przez: kolaborek 15.04.2021, 12:34:56

Cytat(nospor @ 15.04.2021, 13:23:12 ) *
FORM masz generowac dla kazdego wiersza a nie jeden FORM na cala tabele

No i tutaj był pies pogrzebany smile.gif
Dzięki wielkie smile.gif

Napisany przez: dublinka 16.04.2021, 11:58:12

Form ma byc poza pętlą. Jeden form a zamiast input type=submit to dajesz

  1. http://www.php.net/print "<button type=\"submit\" name=\"usun\" value=\"" . $dokument . "\"> Usuń wpis</button>";


Wtedy kazde kliknięcie odwola sie do danego ID z przycisku

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)