Tym razem mam taki oto problemik. Przekazuję metodą $_GET nr id wierszy tabeli do skryptu pdf_del_all.php:
function arrayToString($array){ $i = 0; $string = ''; foreach ($array as $index => $value ){ $string .= "$value,"; }else $string .= "$value"; $i++; } $string = '['.$string.']'; return $string; } $ids[$z['id']] = $z['id']; $pdfs = arrayToString($ids, 1); echo "<tr style=\"font-size: 0.9em; font-weight: normal; text-align: right; resize: none;\" bgcolor=$bgcolor>"; echo "<td colspan=\"2\"><a id=\"confirm_button\" style=\"text-decoration: none; text-align: right;\" href='pdf_del_all.php?id_pdfs=$pdfs' onclick=\"return confirmDeleteAll(this);\"><img src='/modules/mod_zbiorczy_pdf/images/x.png' border=0>wszystkie</a></td>"; }
Teraz skrytp pdf_del_all.php powinien usunąć z bazy wskazane wiersze oraz pliki z serwera powiązane przez zapisaną ścieżkę:
{ foreach ($delete_id as $id_d) { $sql = "delete FROM tbl_zwykle_2str_pdf WHERE id='$id_d'"; } } }
Puki co skrypt usuwa z bazy wiersze lecz nie wszystkie - pozostaje jeden wiersz mimo że print_r($id_d) pokazuje wszystkie wiersze będące w tabeli.
Nie wiem też jak pobrać z bazy ścieżkę do pliku, a następnie usunąć go z serwera.
CREATE TABLE IF NOT EXISTS `tbl_zwykle_2str_pdf` ( `id` smallint(6) UNSIGNED NOT NULL AUTO_INCREMENT, `pdf_uzytkownik` varchar(30) COLLATE utf8_polish_ci NOT NULL, `pdf_czas_dodania` time NOT NULL, `pdf_data_dodania` date NOT NULL, `pdf_nazwa_pliku` varchar(200) COLLATE utf8_polish_ci NOT NULL, `pdf_typ_pliku` varchar(100) CHARACTER SET utf8 NOT NULL, `pdf_rozmiar_pliku` int(9) NOT NULL, PRIMARY KEY (`id`), KEY `pdf_uzytkownik` (`pdf_uzytkownik`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_polish_ci AUTO_INCREMENT=4 ;
Jakaś wskazówka....