PHP ile Dizinde Yer Alan Dosya Sayısı Bulma

2.495 defa okundu

Diğer web sitem’e (www.hesapcim.com) baktıysanız sağ alanda bir karikatür scripti göreceksiniz. Bu karikatür her yeni sayfaya geçtiğinizde otomatik olarak değişiyor ve karikatürler arasından rasgele seçim yaparak bu işlemi gerçekleştiriyor.

Bu işlemin algoritması ise karikatürlerin bulunduğu dizin içindeki karikatürleri saymak ve rasgele olarak bunları görüntülemektir. Şimdi aşama aşama bu algoritmayı anlatayım.

Öncelikle bir php sayfası oluşturun ve buna rasgeleresim.php ismini verin. Resimleri rasgeleresim isimli dizine atın. Daha sonra ise bu sayfaya veri tabanınıza bağlantı için tasarladığınız baglantim.php sayfasını include edin.

Yukarıdaki kod, içinde rasgeleresim isimli bir dizinimiz olduğunu öğrendi ve bu dizinde yer alan dosyaları array mantığıyla indeksledi.

Üst kısımda yer alan kod ise dizinde yer alan resimlerin uzantısının .jpg olması gerektiğini söylüyor. Başlangıç noktasının 1 olduğunu ve dosya sayısının son aralık olduğunu söylüyor. Burada çıkan sonucu istediğiniz bir div ya da sayfa içinde gösterebilirsiniz. Bunun içinse aşağıdaki kod yeterlidir.

 Faydalı olması dileğiyle…

Bunlar da ilginizi çekebilir

  1. Erdal dedi ki:

    Paylaşımlarınızı özenle takip ediyorum. Sayenizde çok şey öğrendim hocam. Hakkınızı helal edin…

    • bymmb dedi ki:

      Varsa helal olsun. Zaten fayda sağlamak için paylaşıyorum. Bu şekilde dönüşler olunca ve insanların faydalandığını görünce daha da gayretleniyorum. İlginiz için teşekkür ederim.

  2. Rabia dedi ki:

    keşke php ile daha fazla örnek olsaydı :/

    • bymmb dedi ki:

      PHP için video’lu eğitim seti hazırlıyorum. Ancak bilmek istediğiniz bir konu varsa ve acilse, yardımcı olabilirim.

  3. Şakir Koç dedi ki:

    //$path=”./image/sinav1″;
    echo $patch;
    $dir=opendir($patch);
    while ($content=readdir($dir))
    {
    if (is_file($path.”/”.$content) AND ($dir != “..”))
    $dizi[]=$content;
    echo $dizi;
    }

    $path=”./image/sinav1″; olan satırı açtığımda dosya sayısını alıyor ancak kapattığımda yani veritabanından çektiğimde saymıyor. kontrol ediyorum yol aynı ./image/sinav1 el ile yazdığımda sayıyor veritabanından çektiğimde saymıyor. yardımcı olabilir misiniz?

    • bymmb dedi ki:

      Merhaba.
      Öncelikle dizini htdocs içindeki bir klasörde oluşturmanızı tavsiye ederim. / işareti php ile html’in birlikte uygulandığı durumlarda kullanılan bir işaret olduğu için, apache serverde çakışma olabiliyor. Htdocs içine images diye bir klasör açıp, içine resimleri attıktan sonra aşağıdaki kodu deneyebilir misiniz?
      $path="images";
      echo $path;
      $dir=opendir($path);
      while ($content=readdir($dir))
      {
      if (is_file($path.”/”.$content) AND ($dir != “..”))
      $dizi[]=$content;
      echo $dizi;
      }

  4. Şakir Koç dedi ki:

    teşekkür ederim alt klasörden çıkarıp bir üst klasöre çıkarınca problem kalmadı.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

This site uses Akismet to reduce spam. Learn how your comment data is processed.