[PHP] usuwanie pliku po kliknięciu w link


(felixik) #1

Witam, próbuję zrobić usuwanie pliku z serwera, które będzie następowało po kliknięciu w link. Niestety za groma nie chce mi to wyjść. Czy ktoś zechciałby pomóc? Będę wdzięczny

Wiem, że listowanie pewnie jest zbędne, ale próbowałem i tą drogą. Poza tym jak mogę pobrać nazwę pliku do usunięcia? $_GET ? (tylko jak?)

Poniżej kod

if($akcja == 'usun_serwer' and !empty($plik)){

$dir = "../data/files/Pliki";

$folder = dir($dir);


while($plik = $folder->read()) {


if (($plik != '.') AND ($plik != '..')) {


echo '' .$plik. '';

}

}

$folder->close();

}[/code]




Link usuwający:

[code][Usuń z serwera](%5C)


(pain3hp) #2

sam sobie zrobiłeś link z parametrem ‘plik’ więc go odbierz $_GET[‘plik’]

jeżeli ścieżki będą poprawne to wszystko zrobisz jedną instrukcją

unlink($_GET['plik']);

(felixik) #3

Pokaż mi to na przykładzie, bo ja właśnie nie wiem jak to odebrać.


(pain3hp) #4

to jest cały skrypt

unlink($_GET['plik']);

(batmomobil) #5

Miałem podobny temat zobacz:http://forum.dobreprogramy.pl/jak-zapisac-warunek-delete-t481863.html


(felixik) #6

usuwanie z bazy to mi działa :slight_smile: ja potrzebuje plik fizycznie z serwera

Kod po małych zmianach:

$dir = "../data/files/Pliki";

$folder = dir($dir);


while($plik = $folder->read()) {


if (($plik != '.') AND ($plik != '..')) {


echo 'usuń'; //line 110

}

}

$folder->close();



Warning: unlink(../data/files/Pliki/) [function.unlink]: Jest katalogiem in index.php on line 110[/code]

(batmomobil) #7

Jeśli usuwanie z bazy działa,to po co listujesz folder???wystarczy podać w ścieżkę do pliku w folderze i w bazie,zrobić GET i unlink.lINK:

USUN;[/code]
unlink z foldera:

[code]if($_GET[‘avdelete’]) $usun=$_GET[‘avdelete’]; $fileToDelete = $usun;if(file_exists($usun)){unlink($usun); if($_GET[‘delete’]) $usuwanie=$_GET[‘delete’];
i z bazy:

$del = mysql_query("DELETE FROM galeria_user WHERE id_zdjecie_user='$usuwanie'"); $zapytanie = mysql_query($del); unset($zapytanie); {

 echo ' czy na pewno usunąć';

(felixik) #8

listowanie mam tak przy okazji. Jeślibyś mógł mi na moim kodzie zrobić usuwanie będę wdzięczny. Nie wiem czemu $_GET[‘plik’] jest pusty i nie ma żadnej wartości. To jest główny i póki co chyba jedyny problem. Pomożesz?


(batmomobil) #9

Jeśli pobierasz dane z bazy,jakąś zmienną $plik i $id_pliku tego pliku, którą chcesz usunąć dajesz do linka:

USUN;[/code]