PHP – də kömək

Salam , Məndə hər istifadecinin id nömrəsi ile sciriptde  papkalar yaranır.Həmin papkalari ftp-den yox php köməkliyi ile silmək isteyirəm. Bunun üçün munasib kodlar yaza bilərsiz?


Yadda saxlama
Kateqoriya: Sual . , , . Qısa keçid.

Verilmiş cavablar və yazılan şərhlər (15 cavab var)

(23:32, 03/06/2013 ) #30536

Salam. Papka boşdursa rmdir(‘papkaya_geden_yol/’.$user_id); yazırsınız silir. Yox əgər fayl varsa içində o halda silməkçün

public static function deleteDir($dirPath) {
    if (! is_dir($dirPath)) {
        throw new InvalidArgumentException("$dirPath must be a directory");
    }
    if (substr($dirPath, strlen($dirPath) - 1, 1) != '/') {
        $dirPath .= '/';
    }
    $files = glob($dirPath . '*', GLOB_MARK);
    foreach ($files as $file) {
        if (is_dir($file)) {
            self::deleteDir($file);
        } else {
            unlink($file);
        }
    }
    rmdir($dirPath);
}

Mənbə

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

(00:26, 04/06/2013 ) #30537

E. Hacı , papkalarin icinde dat fayllar var. bele bir kod yoxladim alinmadi amma, bunuda yoxlayim, indiden twk edirem .

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

(00:40, 04/06/2013 ) #30539

Bunu googleden axtarisda tapmisdim. public static function bu setrde sehv gosterir suntax sehv

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

    (01:11, 04/06/2013 ) #30541

    Syntax səhvlərin nə olduğuna baxıb sətrin nömrəsinə baxın onları dərhal google-da axtarıb səhvi düzəltmək lazımdır. Aşağıda da Master yazdığı kimi, sizdə class yoxdur deyə kiçik dəyişikik etmək lazımdır.

    Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

(00:59, 04/06/2013 ) #30540

PHP255 , Elvin bey onu o funksiyani CLASS ucun yazib ,yeni sen onu CLASS yaradib onun icine yerlewdirib cagirmalisan . Yox eger CLASS yaratmaq isdemirsense onu istifade etmek ucun PUBLIC STATIC sozlerini sil
yeni bele istifade et

 function deleteDir($dirPath) {
    if (! is_dir($dirPath)) {
        throw new InvalidArgumentException("$dirPath must be a directory");
    }
    if (substr($dirPath, strlen($dirPath) - 1, 1) != '/') {
        $dirPath .= '/';
    }
    $files = glob($dirPath . '*', GLOB_MARK);
    foreach ($files as $file) {
        if (is_dir($file)) {
            self::deleteDir($file);
        } else {
            unlink($file);
        }
    }
    rmdir($dirPath);
}
Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

(02:47, 04/06/2013 ) #30543

self:: <– bu sətri də sil

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

(11:52, 04/06/2013 ) #30546

Yenede silinmir , adice bos papka yaradiram rmdir(“test”); bu vasiteyle silmir. Bele bir sehv gelir ekrana
Warning: rmdir(test) [function.rmdir]:

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

    (16:14, 04/06/2013 ) #30552

    Elə bu gəlir? Davamı da olmalıdır axır.

    Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

(16:51, 04/06/2013 ) #30553

E. Hacı , Davaminda `silinme icazesi yoxdur` yazilir, Amma php faylini bir papka geriye atanda isleyir. yeni
rmdir(“log/test”); bele isleyir
rmdir(“test”); bele yox.

mene esas icinde dat fayllar olan papkalarin silinmesi lazimdi. texmini 600den cox papka yaranib icinde o gederde dat fayl var,en azi gunde 1 defe silmeliyem ki yaddas dolmasin. amma alinmir.

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

    (17:43, 04/06/2013 ) #30555

    Bunu da yoxlayın. Papkaların da adının düz yazdığınıza əmin olun.

    <?php
    
     // When the directory is not empty:
     function rrmdir($dir) {
       if (is_dir($dir)) {
         $objects = scandir($dir);
         foreach ($objects as $object) {
           if ($object != "." && $object != "..") {
             if (filetype($dir."/".$object) == "dir") rrmdir($dir."/".$object); else unlink($dir."/".$object);
           }
         }
         reset($objects);
         rmdir($dir);
       }
     }
    ?>
    
    Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

(19:34, 04/06/2013 ) #30560

E. Hacı , Burada papkanin adi hara yazilir? men yuxarda $dir=’log’; bele yazdim duzgundur bele? Birde berke bular yalniz 1 papkani silmek ucundur. mende log papkasinin daxilinde istifadecilerin id nomresi ile yaranmish 1000-e yaxin papka var onlarin icindede o geder dat fayl var.

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

    (19:41, 04/06/2013 ) #30562

    Bu bütün log papkanı silmək üçündür. Bir də sizin file manager, ftp kimi accessiniz yoxdur ki serverdən asanlıqla siləsiniz? Log yazanda silmirsə deməli path düzgün deyil tam path ilə yoxlayın məsələn /home/public_html/log

    Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

(20:01, 04/06/2013 ) #30563

Qurulan funksiya mysql ile elaqedardir , ona gore hem dat fayllar hemde mysgl eyni vaxtda silinmelidir . FTP-den silsem ikisini eyni vaxtda sile bilmerem. Gerek istifadeci girisini baglayim sonra silim . Hemin vaxt istifadeci olsa niklerinde problem yaranacaq.Buna gorede 1klik ile hem mysql melumatlarini hemde dat fayllari silmek isteyirem .

Dediyiniz kimide yoxladim teessuf netice eynidi.

asaqida bele formada yazdim
rrmdir(‘log’);
yene alinmadi

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

(11:58, 05/06/2013 ) #30584

Sualı əvvəldə düzgün formalaşdırmaq lazımdır ki, cavab yazmaq istəyənlər telepatik bacarıqlarına müraciət etmək məcburiyyətində qalmasınlar.

Nümunə:

$dir = 'qovluqlar/' . $id;
mysql_query("DELETE FROM `downloads` WHERE `id` = '" . $id . "';");
rrmdir($dir); 

Burada rrmdir Yuxarıda qeyd edilmiş funksiyadır

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

(14:10, 05/06/2013 ) #30586

VendeTTA , Siz yazdiqiniz vasite ile her istifadeci oz qovluqunu silir. Men ise admin panelden butun qovluqlari silmek istediyimi bildirmisem.

function KlasorSil($dir) {
if (substr($dir, strlen($dir)-1, 1)!= '/')
$dir .= '/';
//echo $dir; //silinen klasörün adı
if ($handle = opendir($dir)) {
	while ($obj = readdir($handle)) {
		if ($obj!= '.' && $obj!= '..') {
			if (is_dir($dir.$obj)) {
				if (!KlasorSil($dir.$obj))
					return false;
				} elseif (is_file($dir.$obj)) {
					if (!unlink($dir.$obj))
						return false;
					}
			}
	}
		closedir($handle);
		if (!@rmdir($dir))
		return false;
		return true;
	}
return false;
}

Bu versiya ishledi.
Hemcinin papkalari cmod 777 , olmaq sherti ile

Movzuda butun fikir yazanlara tesekkur.

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

Bu suala aid öz sualım var:
Sual verin
Bu suala cavab vermək istəyirəm:
Cavab verin

Cavab verin


Cavab yazmaq üçün lütfən sağ sütundan və ya buradan hesaba daxil olun.

Üzvlər üçün giriş

Qeydiyyat

Elan qutusu

Son cavablar və şərhlər

MiMov cavab verdi - Özəl ip tv qurmaq (4 gün əvvəl)

MiMov cavab verdi - iptv onlayn paket almaq (4 gün əvvəl)

E. Hacı cavab verdi - 300$ Gömrük Limitini keçdim (10 gün əvvəl)

Software Developer cavab verdi - Aliexpress gömrük rüsumu nəyə görə hesablanır? (12 gün əvvəl)

AliyevYT cavab verdi - Honeygain, passiv gelir (13 gün əvvəl)

Sıradan biri cavab verdi - IMEI qeydiyyatı (14 gün əvvəl)

Fariz Huseynli cavab verdi - cerimenin öyrənilməsi (17 gün əvvəl)

Software Developer cavab verdi - cerimenin öyrənilməsi (19 gün əvvəl)

Software Developer cavab verdi - Kapital bank rekvizit payoneer (19 gün əvvəl)

Software Developer cavab verdi - Hər hansı kompyuter proqramının (EXE faylı) etibarlı olub olmaması yəni qanuni və ya saxta olduğunu necə bilmək olar ? (19 gün əvvəl)

txmn cavab verdi - Hərbi biletsiz, möhlətsiz iş (21 gün əvvəl)

Galaxy cavab verdi - X-də (Twitter) premium abunəliklə bağlı çətinlik (22 gün əvvəl)

Rsad Ncfli cavab verdi - Payonner 2024 ilə bağlı sual (27 gün əvvəl)

Software Developer cavab verdi - Payonner 2024 ilə bağlı sual (27 gün əvvəl)

Rsad Ncfli cavab verdi - Payonner 2024 ilə bağlı sual (27 gün əvvəl)

Software Developer - 615 xal

E. Hacı - 607 xal

Onar Alili - 526 xal

Dilsuz - 448 xal

Cabbarov Sübhan - 434 xal

Maqa - 346 xal

Ruslan Butdayev - 328 xal

Namiq Bəndəli - 297 xal

U.Tarlan - 244 xal

Meherremoff - 234 xal

Sistemə daxil olmuş 23229 sualdan 92%-dən çoxu cavablandırılmışdır.

Proyekt haqqında

E-Haci.net istehsalı. © 2010-2024