-Поиск по дневнику

Поиск сообщений в flashripper_net

 -Подписка по e-mail

 

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 19.04.2008
Записей: 861
Комментариев: 14
Написано: 873


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

Среда, 05 Ноября 2008 г. 18:04 + в цитатник
Оригинал сообщения

Комментарии: комментарии

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

Для начала создайте файл index.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;

$ranfile= mt_rand(1, $files);

$ranfile= sprintf(”%03d”, $ranfile);

if (!filetest($ranfile))

{

ImgWrite($ranfile);

Echo “<img src=\”$imgdir$ranfile.”.$ext.”\”>”;

$imgcounter++;

}

else

{

if ($imgcounter<$files)

{

ImgRandom($files);

}

else

{

if ($mode==1)

{

Echo $error.”<br>”;

}

elseif ($mode==2)

{

Echo “<img src=\”$imgdir$errorfile.”.$ext.”\”>”;

}

}

}

}

if ($NoCacheMode==1)

{

NoCache();

}

$imgcounter=0;

print “<title>Случайный вывод картинок</title><br>”;

ImgRandom(FileCount($imgdir));

?>

Разберём код немного подробнее
$imgdir=”img/”;

Данная строчка отвечает откуда будут грузится картинки, в данном случае картинки будут загружаться из папки img.

———————————
$ext=”jpg”;

Данная строчка отвечает за расширение картинок, которые будут выводится, в данном случае картинки будут грузится только с расширением jpg

———————————
$error=”Мало картинок.”;

$errorfile=”error/error_001.jpg”;

Данная строчка отвечает за то, что если в папке img не будет ни одной картинки, на экран пользователя будет выведена картинка, можете в данную папку поместить свою собственную картинку.

Теперь когда будете загружать картинки в папку img не забудьте переименовать все картинки в названия такого типа 001.jp; 002.jpg; 003.jpg; 010.jpg и.т.д

Папку img надо класть в ту директорию куда вы положили файл index.php или переназначьте путь откуда будут грузится картинки.

Дополнительно:
Автор: Сергей Парижский


Я сейчас нахожусь В городе
Мой настрой Хороший
Я слушаю LastFm.Ru
дневникиLIci WP - WordPress crossposting plugin

 

Добавить комментарий:
Текст комментария: смайлики

Проверка орфографии: (найти ошибки)

Прикрепить картинку:

 Переводить URL в ссылку
 Подписаться на комментарии
 Подписать картинку