PHP mkdir sorunu!

5 Cevap php

Ben bu gibi bazı dirs oluşturmak için çalışıyor:

@mkdir("photos/$cat/$sku", 0777, true)

o 0777 izinleri ile ilk dizin yaratır, ama ikinci yaratır zaman perma bulunuyor olarak 000 kullanır, bu yüzden üçüncü oluşturmak için başarısız olur.

Bu bir geçici çözüm lütfen?

Thanks, Richard.

5 Cevap

Bu sorunu çözüldü:

$a = @mkdir("photos/$cat/", 0777);
    @chmod("photos/$cat/", 0777);
    $b = @mkdir("photos/$cat/$sku/", 0777);
    @chmod("photos/$cat/$sku/", 0777);

ama neden mkdir özyinelemeli kullanamıyorum?

Eğer herhangi dir kullanarak mkdir fonksiyonu oluştururken sevgili kullanıcı haklarına nedeniyle, kullanıcıyı kontrol edin,

Eğer chmod dizinleri ing denediniz mi?

mkdir("photos/$cat", 0777, true);
chmod("photos", 0777);
chmod("photos/$cat", 0777);
mkdir("photos/$cat/$sku", 0777);
chmod("photos/$cat/$sku", 0777);

Bunu yaptım ve mükemmel çalışır:

    if (!is_dir($path)) {
        $dirs = explode('/', $path);
        $i = 0;
        $subdir = '';
        foreach ($dirs as $dir) {
            if($i > 0){$dir = '/' . $dir;}
            $subdir .= $dir;
            if(!is_dir(DIR_CACHE . $subdir)){@mkdir(DIR_CACHE . $subdir);@chmod(DIR_CACHE . $subdir, 0777);}

            $i++;
        }
    }

Yani yapmanız gereken tüm yolu define ($ yol = resimler / $ cat / $ SKU)