Квартиры, дома, земельные участки Краснодарского края без посредников. Объявления собственников недвижимости.
Реклама здесь
Главная
Примеры PHP Примеры JavaScript Примеры Ajax Примеры CSS,HTML

Вывод случайного изображения из папки на php

Например, у вас есть сайт и на сайте есть мини блок где вы показываете картинки, и вы постоянно(например: раз в день) обновляете html файл в который каждый раз вставляете новую картинку. Согласитесь это очень не удобно, ну так вот в данном примере мы решим эту проблему. Пример вы можете посмотреть здесь, потом обновите страницу, для этого нажмите F5 и вы увидите, что картинка стала совершенно другой.
Для начала создайте файл index.php и вставьте в него следующий код:


<?php
$imgdir
="img/";    // откуда будут грузится картинки
$ext="jpg";    // расширение картинок, которые будут выводится
$mode=2;
$error="В папке нет картинок!";
$errorfile="error/error_001.jpg";
$NoCacheMode=1;

function 
NoCache()
{
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Pragma: no-cache");
header("Last-Modified: ".gmdate("D, d m y H:i:s")."GMT");
}

function 
FileCount($imgdir)
{
$files=0;
$cfile=opendir("$imgdir");

while((
$e=readdir($cfile))!==false$files++;
$files-=3;
return 
$files;
}

function 
filetest($ranfile)
{global 
$imagelist;
 
$status false;
 if (IsSet(
$imagelist)){
    foreach (
$imagelist as $occu) {
        
$occu=trim($occu);
        if (
$ranfile==$occu) {
            
$status=true;
            return 
$status;
            }
        }
 }
 return 
$status;
}

function 
ImgWrite($ranfile)
{global 
$imagelist;
 
$ranfile=trim($ranfile);
 
$imagelist[]=$ranfile;
}

function 
ImgRandom($files)
{global 
$ext$imgdir$imgcounter$mode$error$errorfile;
 
$ranfilemt_rand(1$files);
 
$ranfilesprintf("%03d"$ranfile);
 if (!
filetest($ranfile)) {
    
ImgWrite($ranfile);
    Echo 
"<img src=\"$imgdir$ranfile.".$ext."\">";
    
$imgcounter++;
    }
 else {
    if (
$imgcounter<$filesImgRandom($files);
    else {
        if (
$mode==1) {
            Echo 
$error."<br>";
        }
        elseif (
$mode==2) {
            Echo 
"<img src=\"$imgdir$errorfile.".$ext."\">";
            }
        }
    }
}
if (
$NoCacheMode==1NoCache();
$imgcounter=0;
print 
"<title>Случайный вывод картинок</title><br>";
ImgRandom(FileCount($imgdir));
?>
Скопировать в буфер

Если в папке img не будет ни одной картинки, на экран пользователя будет выведена картинка error/error_001.jpg.

Теперь когда будете загружать картинки в папку img не забудьте переименовать все картинки в названия такого типа 001.jp; 002.jpg; 003.jpg; 010.jpg и.т.д
Папку img надо класть в ту директорию, куда вы положили файл index.php или переназначьте путь откуда будут грузится картинки.

Найти аптеку. Удобная интернет аптека москва.
интернет магазин матрасы
виртуальный номер

© Copyright 2008-2012 by KDG