Befounder Mesaj tarihi: Ağustos 30, 2004 Mesaj tarihi: Ağustos 30, 2004 merhaba, bi arkadas icin bi php uploader yazdım, upload kısmı gayet guzel calısıyo. Upload edilenleri de gayet guzel ayn sayfada listeleyebiliyo. Ancak simdi bi sorunum var. php scripti "a" klasorunde, upload edilenler ise "a/b" (a'nın icinde b klasoru). b'nin icindeki bi dosyayı nasıl silebilirim? php.net'den unlink() fonksiyonunu buldum ama o isi goremiyor, en azından b klasorunun icine giripde o dosyayı buldurtamadım. daha birkac fonksiyon daha buldum (user-defined) ama onlarda yapamadı, yada ben yaptıramadım. Bunu nasıl yapabilirim? Su anda kullandigim kod: said: function total_delete($arg) { if (file_exists($arg)) { chmod($arg,0777); if (is_dir($arg)) { $handle = opendir($arg); while($aux = readdir($handle)) { if ($aux != "." && $aux != "..") total_delete($arg."/".$aux); } closedir($handle); } else unlink($arg); } } if ( $secret2 == "****" && $delete == "Delete!") { $ddir='hw/'; opendir($ddir); total_delete($puff); closedir($ddir); echo "$puff is deleted!"; } ?> Secret word: File to be deleted: [Bu mesaj Befounder tarafından 30 Ağustos 2004 13:16 tarihinde değiştirilmiştir]
wastiee Mesaj tarihi: Ağustos 30, 2004 Mesaj tarihi: Ağustos 30, 2004 unlink() siler normalde, ben hep unlink() kullanirim mesela php dosyasinin bulundugu yerde, b klasoru altindaki a dosyasi icin, unlink("b/a"); calisir, dogru chmodlarin varsa tabi. ama dosyayi yaratabiliosan o klasorde phpden, silebilirsin de, chmodlar ayarlidir. b klasorunun altindaki a dosyasini eger bulman gerekiosa ilk once, onun icin opendir() falan gibi fonksiyonlar var, www.php.net 'te filesystem functions 'da bulabilirsin[signature][hline]wastiee | PHPNotepad edit: smileyleri iptal ettim [Bu mesaj wastiee tarafından 30 Ağustos 2004 13:51 tarihinde değiştirilmiştir]
Mum_Chamber Mesaj tarihi: Ağustos 30, 2004 Mesaj tarihi: Ağustos 30, 2004 arkadaş zaten kodunda opendir ve closedir kullanmış da, yolladığı kod silmek için zaten unlink() kullanıyor. zaten kalan kısmı da recursive olarak subfolderları silmek için. sorun işletim sisteminden kaynaklanıyor olabilir mi? win üzerinde çalışıyorsa falan diye şeettirdim. gerçi wastiee varken bize laf düşmez ama..[signature][hline]en ince yerim bileğim..
Befounder Mesaj tarihi: Ağustos 30, 2004 Konuyu açan Mesaj tarihi: Ağustos 30, 2004 OS: Linux (kernel: 2.4.21-15.ELsmp) unlink'i sole kullansam: said: $ddir='hw/'; opendir($ddir); chmod($puff,0777); unlink($ddir . $puff); closedir($ddir); echo "$puff is deleted!"; [Bu mesaj Befounder tarafından 30 Ağustos 2004 14:46 tarihinde değiştirilmiştir]
Befounder Mesaj tarihi: Ağustos 30, 2004 Konuyu açan Mesaj tarihi: Ağustos 30, 2004 programcılığa bayılıyorum, ve bayılma nedenim bir kez daha kendini gösterdi. İki kod bloğu arasındaki farkı bulunuz: said: if ( $secret2 == "delideniz" && $delete == "Delete!") { $ddir="hw/"; opendir($ddir); unlink($ddir . $puff); echo "$puff is deleted!"; } ?> Secret word: File to be deleted: formu ve table zamazingolarını saymazsak 'hw/' olan kısmı "hw/" yaparsak duzelıyor. chmod ve closedir kısmı da tamamen gereksizmis :)
Berk Mesaj tarihi: Ağustos 30, 2004 Mesaj tarihi: Ağustos 30, 2004 eee befounder-san hayat böyle işte dikkat edicen tırnaklara kesmelere yoksa sabahlarsın gecelerce =)
Öne çıkan mesajlar