Potrebna pomoć oko unlink funkcije

3

Potrebna pomoć oko unlink funkcije

offline
  • Pridružio: 21 Apr 2007
  • Poruke: 98

Probaj ovako:

Izlistaj sve slike iz direktorijuma
if ($Result1) {    $ekstenzije = array('jpg','png'); //Nalazi JPG i PNG fajlove    $files = array();    $dir = opendir("../imgs/$colname_slike/");    $count=0;    $debug = "";    while( ($file = readdir($dir)) != false )     {      echo $file;     $debug.="\n".$file;     }     closedir($dir);    ?><textarea style="width:600;height:450px;">Brisem:<?=$debug?></textarea><?php }

Dakle zameni onaj moj prethodni kod sa ovim gde bi trebalo da se prikažu sve slike iz izabranog dir u textarea polju. Prvo vidi da li to radi ok.

EDIT:
Totalno trivijalna greška Very Happy

u onom mom kodu nadji:
unlink($file);
i zameni sa:
unlink("../imgs/$colname_slike/".$file);

Za unlink funkciju nismo odredili tačnu putanju, već samo imena fajlova. Wink Bebee Dol



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Pridružio: 30 Avg 2008
  • Poruke: 91

Pokušao sam sa drugom scriptom tu mi izbacuje grešku

Folder: Klikni ovde | colname_slike = 558(ovaj deo i dalje radi)


Warning: unlink(1.jpg) [function.unlink]: No such file or directory in C:\wamp\www\administracija\delete.php on line 69

Warning: unlink(1_resize.jpg) [function.unlink]: No such file or directory in C:\wamp\www\administracija\delete.php on line 69

Warning: unlink(2.jpg) [function.unlink]: No such file or directory in C:\wamp\www\administracija\delete.php on line 69

Warning: unlink(2_resize.jpg) [function.unlink]: No such file or directory in C:\wamp\www\administracija\delete.php on line 69

Warning: unlink(3.jpg) [function.unlink]: No such file or directory in C:\wamp\www\administracija\delete.php on line 69

Warning: unlink(3_resize.jpg) [function.unlink]: No such file or directory in C:\wamp\www\administracija\delete.php on line 69

Warning: unlink(4.jpg) [function.unlink]: No such file or directory in C:\wamp\www\administracija\delete.php on line 69

Warning: unlink(4_resize.jpg) [function.unlink]: No such file or directory in C:\wamp\www\administracija\delete.php on line 69

Warning: unlink(5.jpg) [function.unlink]: No such file or directory in C:\wamp\www\administracija\delete.php on line 69

Warning: unlink(5_resize.jpg) [function.unlink]: No such file or directory in C:\wamp\www\administracija\delete.php on line 69

Warning: unlink(6.jpg) [function.unlink]: No such file or directory in C:\wamp\www\administracija\delete.php on line 69

Warning: unlink(6_resize.jpg) [function.unlink]: No such file or directory in C:\wamp\www\administracija\delete.php on line 69




echo "Folder: <a href='../imgs/".$_GET['id']."'>Klikni ovde</a> | <b>colname_slike</b> = $colname_slike"; // Specify Directory where images are $dir = "../imgs/$colname_slike"; // open specified directory $dirHandle = opendir($dir); // Create incremental counter variable $count = 0; // Initialize a var for the gallery output $returnstr = ""; // echo "<table width=\"75\" border=\"0\">";       // if not a subdirectory and if filename contains the string '.jpg'        while ($file = readdir($dirHandle)) {       // if is not a folder       if(!is_dir($file)) {           unlink($file);       }     }     // close the open directory    closedir($dirHandle);    // output the gallery files    echo $returnstr;



offline
  • Pridružio: 21 Apr 2007
  • Poruke: 98

Zameni
unlink($file);
sa
unlink($dir."/".$file);

Note: ovaj tvoj kod je veoma sličan sa onim mojim gore s tim što briše sve fajlove a ne samo JPG ili PNG.

offline
  • Pridružio: 30 Avg 2008
  • Poruke: 91

Ovo što si predložio izbacuje grešku

Warning: readdir(): 6 is not a valid Directory resource in

C:\wamp\www\administracija\delete.php on line 68
while( ($file = readdir($dir)) != false )

Warning: closedir(): 6 is not a valid Directory resource in C:\wamp\www\administracija\delete.php on line 76
closedir($dir);

i onaj deo echo $files na početku while izbaci slike ali ovako
...1.jpg1_resize.jpg2.jpg2_resize.jpg3.jpg3_resize.jpg4.jpg4_resize.jpg5.jpg5_resize.jpg6.jpg6_resize.jpg


dobro sad bar imamo greške Smile

offline
  • Pridružio: 21 Apr 2007
  • Poruke: 98

Pa ništa nisam promenio vezano za čitanje direktorijuma već samo za putanju za brisanje fajlova kod onog tvog koda.

Ovu grešku ti izbacuje jer ne postoji folder sa slikama:
imgs/ID/

Ne znam sada o kom kodu pričaš: ovom tvom iznad
mycity.rs/PHP/Potrebna-pomoc-oko-unlink-funkcije_2.html#1142673
Ili onom mom...pošto sam ti ja predložio rešenje za ovaj tvoj kod, a ti si izgleda stavio taj kod gore u moj primer pa ti izbacuje tu grešku. Razz

offline
  • Pridružio: 30 Avg 2008
  • Poruke: 91

Napisano: 28 Mar 2011 18:42

U pa ovo radi

hvala što si proveo ceo dan sa rešavanjem tuđih problema

evo šaljem kod ako nekome zatreba

if ($Result1) {        echo "Folder: <a href='../imgs/".$_GET['id']."'>Klikni ovde</a> | <b>colname_slike</b> = $colname_slike"; // Specify Directory where images are $dir = "../imgs/$colname_slike"; // open specified directory $dirHandle = opendir($dir); // Create incremental counter variable $count = 0; // Initialize a var for the gallery output $returnstr = ""; // echo "<table width=\"75\" border=\"0\">";       // if not a subdirectory and if filename contains the string '.jpg'        while ($file = readdir($dirHandle)) {       // if is not a folder       if(!is_dir($file)) {           unlink($dir."/".$file);       }     }     // close the open directory    closedir($dirHandle);    // output the gallery files    echo $returnstr;    ?></textarea><?php }

Dopuna: 28 Mar 2011 18:44

Moram da priznam da se sada osećam puno bolje, hvala još jednom

offline
  • Pridružio: 21 Apr 2007
  • Poruke: 98

Ja bih ti ipak predložio onaj moj kod gore jer on radi samo ako prvo izbrišeš podatke u bazi . Kod tvog koda, ako kojim slučajem upit fail-uje, opet će izbrisati fajlove bez obzira što nisu izbrisani u bazi podataka.
EDIT: sad vidim da si promenio kod...i radi samo kada je upit ok. Razz Inače, onaj </textarea> na kraju ti ne treba koliko vidim.

Takođe, moj kod briše fajlove samo sa određenim ekstenzijama, a ne sve.

Inače, drago mi je da ti je pomoglo, ja ionako radim na nekom projektu pa pravim mini pauze da pišem ovde Razz

offline
  • Pridružio: 30 Avg 2008
  • Poruke: 91

ako sam dobro shvatio tvoj kod izgleda ovak

if ($Result1) {    $ekstenzije = array('jpg','png'); //Nalazi JPG i PNG fajlove    $files = array();    $dir = opendir("../imgs/$colname_slike/");    $count=0;    $debug = "";    while( ($file = readdir($dir)) != false )     {      echo $file;     $debug.="\n".$file;    while( ($file = readdir($dir)) != false )     {         if( !is_dir($file) && !in_array($file,array('.','..')) && in_array(substr($file,strrpos($file,'.')+1),$ekstenzije) )            {            if (file_exists($file))       {$count++; $debug.= "\n$count | $file"; unlink("../imgs/$colname_slike/".$file); }            }     }     closedir($dir);     }        ?><textarea style="width:600;height:450px;">Brisem:<?=$debug?></textarea><?php }

Warning: readdir(): 6 is not a valid Directory resource in C:\wamp\www\administracija\delete.php on line 61

while( ($file = readdir($dir)) != false )

Brisem:<?=$debug?>
mi izbacuje
Brisem:<?=$debug?>

offline
  • Pridružio: 21 Apr 2007
  • Poruke: 98

Isključen ti je short_open_tag u php.ini.

Ovaj kod gore nije moj (imaš 2 while petlje). Mislim da bi kod trebalo da izgleda ovako:
   if ($Result1) {    $ekstenzije = array('jpg','png'); //Nalazi JPG i PNG fajlove    $files = array();    $putanja = "../imgs/$colname_slike/";    $dir = opendir($putanja);    $count=0;    $debug = "";    while( ($file = readdir($dir)) != false )     {         if( !is_dir($file) && !in_array($file,array('.','..')) && in_array(substr($file,strrpos($file,'.')+1),$ekstenzije) )            {            if (file_exists($putanja.$file))       {$count++; $debug.= "\n$count | $file"; unlink($putanja.$file); }            }     }     closedir($dir);    ?><textarea style="width:600;height:450px;">Brisem:<?php echo $debug; ?></textarea><?php }

Ko je trenutno na forumu
 

Ukupno su 1227 korisnika na forumu :: 35 registrovanih, 5 sakrivenih i 1187 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: Apok, babaroga2, Belac91, Belisarius, Bobrock1, bojan_t, brundo65, cavatina, DeerHunter, Denaya, dule10savic, Džordžino, GORDI, goxin, ivan979, Koridor, krkalon, Kruger, Kubovac, lcc, Mercury, milenko crazy north, miljannis, MILO-VAN, nikoladim, pacika, Prometeus, Sančo, Srky Boy, trajkoni018, Vlad000, vladaa012, YugoSlav, zastavnik, |_MeD_|