PHP ile Dizinde Yer Alan Dosya Sayısı Bulma: yazının metni
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.
include('baglantim.php');
$path="rasgeleresim";
$dir=opendir($path);
while ($content=readdir($dir))
{
if (is_file($path."/".$content) AND ($dir != ".."))
$dizi[]=$content;
}
$dosya_sayisi=count($dizi);
Yukarıdaki kod, içinde rasgeleresim isimli bir dizinimiz olduğunu öğrendi ve bu dizinde yer alan dosyaları array mantığıyla indeksledi.
$toplam = $dosya_sayisi;
$resim_uzantisi = ".jpg";
$resim_klasoru = "rasgeleresim";
$ilk = "1";
$rastgele = mt_rand($ilk, $toplam);
$resim_adi = $rastgele . $resim_uzantisi;
$resim="resim/".$resim_adi;
Ü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.
<?php
echo $resim;
?>
Faydalı olması dileğiyle...