Показать сообщение отдельно

  #7  
Старый 30.05.2007, 14:35
spamoney
Участник форума
Регистрация: 26.12.2006
Сообщений: 107
Провел на форуме:
228267

Репутация: 27
По умолчанию

Цитата:
Есть две проблемки, помогите решить, пожалуйста, а то я в php вообще не разбираюсь:

1. Есть скрипт для вывода случайных картинок из папки, как сделать так, чтобы картинки выводились не только из папки images, но и из подпапок, т.е из images/1/2/3.....
block-Random-image.php
PHP код:
<?php
if (!defined('BLOCK_FILE')) {
        
Header("Location: ../index.php");
        exit;
}


ob_start();
include(
"modules/Album/album/randomimg.php"); //путь к файлу обработчику
$script ob_get_contents();
ob_end_clean();
$content .= $script;

?>
randomimg.php
PHP код:
<?php
$dir
="/images";/// Укажите папку с фото
$openthisdir=opendir($dir);
while (
$k=readdir($openthisdir))
{
$m=substr($k,-4);
if (
$m=='.jpg' or $m=='.png' or $m=='.gif'$array[]=$k;
}
closedir($openthisdir);
$number=rand(0,count($array)-1);
echo 
"<center><img src='$dir/$array[$number]' alt='Случайная картинка'></center><br>";
$size=filesize("$dir/$array[$number]");

echo 
"Файл: $array[$number]<BR>";///Вывод названия

echo "Размер: $size б.<BR>";///Вывод Размера

?>

Переделал этот скрипт:
PHP код:
<?php 
$dir
="modules/Album/album/";
function 
cd_dir($dir){ 
  
$r=opendir($dir); 
  while (
false !==  ($k readdir($r))){ 
    if(
is_dir("$dir\\\\\\\\$k") && $k!="." && $k!=".."
      
cd_dir("$dir\\\\\\\\$k"); 
elseif (
$m=substr($k,-4) and  $m=='.jpg' or $m=='.png' or $m=='.gif')
$array[]=$k;
$number=rand(0,count($array)-1);
echo 
"<center><img width=100 height=100 src='$dir/$array[$number]' alt='Случайная картинка'></center><br>";
$size=filesize("$dir/$array[$number]");
echo 
"Файл: $array[$number]<BR>";///Вывод названия
echo "Размер: $size б.<BR>";///Вывод Размера
}
  } 

cd_dir($dir); 

?>
Но теперь вместо одной случайной картинки выводятся все картинки, которые находятся в папке и подпапках: "modules/Album/album/" Как сделать что бы выводилась одна, случайная?