• 25-05-2013, 11:59:29
    #1
    Merhabalar,
    bu gün klasor ve dosyaları listeleme scripti yazıyordum.
    Burada mevcut olan verinin dosyamı yoksa klasör mü oldugunu bir türlü çalıştırmadım.

    Örnek Kod:
    <?php
    $klasorSayisi = $dosyaSayisi = 0;
    //. içinde bulunduğunuz klasör
    //alt klasörlerde çalışmak için opendir('dosya_yolu')
    $yol = $_GET['yol'];
    $yol = $yol.'/';
    
    if ($klasor = opendir($yol)) {
        while (false !== ($girdi = readdir($klasor))) {
            if ($girdi != "." && $girdi != "..") {
                if (is_dir($girdi)) { //Klasör mü kontrolü
                    echo "Klasör => " . $girdi . "<br>";
                    $klasorSayisi++;
                } else {
                    echo "<a href=" . $girdi . ">$girdi</a><br>";
                    $dosyaSayisi++;
                }
            }
        }
        echo "<br>==============<br>";
        echo "Toplam Klasor Sayisi : " . $klasorSayisi . "<br>";
        echo "Toplam Dosya Sayisi : " . $dosyaSayisi;
        closedir($klasor);
    }
    ?>
    sizce problem nerede?
  • 25-05-2013, 12:08:52
    #2
    Şu satırı:
    $yol = $_GET['yol'];
    Şu şekilde değiştirdim:
    $yol = isset($_GET['yol']) ? $_GET['yol'] : "C:/wamp/www";
    Sorunsuzca çalıştı. Diğer türlü, C:/ dizinindeki veriler ile işlem yapmaya çalışıyor fakat yeterli izin olmadığı için beceremiyor.
  • 25-05-2013, 13:02:51
    #3
    listeleme konusunda bir sıkıntı olmuyor.
    Dosyamı klasör mü olduğunu ayıramıyor sistem
  • 25-05-2013, 13:09:03
    #4
    nurettin adlı üyeden alıntı: mesajı görüntüle
    listeleme konusunda bir sıkıntı olmuyor.
    Dosyamı klasör mü olduğunu ayıramıyor sistem
    Kodu çalıştırdığım zaman çıkan sonuç:

    .htaccess
    Klasör => site
    Klasör => t
    testmysql.php
    Klasör => wp
    x.php
    Klasör => xxx
    
    ==============
    Toplam Klasor Sayisi : 4
    Toplam Dosya Sayisi : 3
    Siz tam olarak nasıl bir çıktı istiyorsunuz?
  • 25-05-2013, 13:56:04
    #5
    is_file($adi) = dosya mı diye kontrol eder
    is_dir($adi) = klasör diye mi kontrol eder
  • 25-05-2013, 15:54:49
    #6
    Bende klasorleride dosya olarak görüyor.




    . ile explode etmeyi düşündüm eğer 0 dan büyükse dosya küçükse klasör diye ama is_dir ve is_file komutlarını kullanmak daha kolay ve hızlı olacağını düşündüm.
  • 26-05-2013, 11:28:45
    #7
    bu konu hakkında yardımcı olabilecek arkadaş varsa çok sevinirim.