Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Вывод картинок из директории...

Сообщения:  [1-4] 

 
 автор: cheops   (24.03.2005 в 22:31)   письмо автору
 
   для: Shorr Kan   (24.03.2005 в 21:28)
 

Хм... может как-нибудь попроще, вот так например
<?php 
  $info_admin 
mysql_fetch_array(mysql_query("SELECT * FROM admin;")); 
  
$dir opendir ($info_admin['url_images']); 
  while ( 
$file readdir ($dir)) 
  { 
    if (( 
$file != ".") && ($file != "..")) $img[] = $file
  } 
  
closedir ($dir); 
  
$show = array();
  for(
$i=0;$i<$info_admin['sum_img'];$i++)
  { 
    
$index rand(0count($img)); 
    
$show[] = $img[$index];
    unset(
$img[$index]);
  } 
  for(
$i=0;$i<count($show);$i++)
  {
    print 
$count_show[$i]."<BR>";
  }
?>

   
 
 автор: Shorr Kan   (24.03.2005 в 21:28)   письмо автору
 
   для: Shorr Kan   (24.03.2005 в 21:24)
 


$img='';$x='';
$info_admin = mysql_fetch_array(mysql_query("SELECT * FROM admin;"));
$dir = opendir ($info_admin['url_images']);
  while ( $file = readdir ($dir))
  {
    if (( $file != ".") && ($file != ".."))
    {
      $img[].=$file;
    }
  }
  closedir ($dir);
$count=count($img);
$show="";
for($i=0;$i<$info_admin['sum_img'];$i++){
$add=rand(0,$count);
for($a=0;$a<count($show);$a++){
if($img[$a]!=$img[$add]){
$show[].=$img[$a];break;}}
if(count($show)==$info_admin['sum_img']){break;}
}
$count_show=count($show);
for($i=0;$i<$count_show;$i++){print $count_show[$i]."<BR>";}




Это третий вариант. Наиболее приближенный к тому, что нужно... но ошибка...

   
 
 автор: Shorr Kan   (24.03.2005 в 21:24)   письмо автору
 
   для: Shorr Kan   (24.03.2005 в 20:56)
 

Второй вариант:


$info_admin = mysql_fetch_array(mysql_query("SELECT * FROM admin;"));
$dir = opendir ($info_admin['url_images']);
  while ( $file = readdir ($dir))
  {
    if (( $file != ".") && ($file != ".."))
    {
      $img[].=$file;
    }
  }
  closedir ($dir);
$count=count($img);
$show="";
for($i=0;$i<$info_admin['sum_img'];$i++){
$add=rand(0,$count);
for($a=0;$a<$count;$a++){if($img[$a]!=$img[$add]){$show[].=$img[$a];}}
}
print count($show);


Тоже что-то не то... выводит 300, а не 15...

   
 
 автор: Shorr Kan   (24.03.2005 в 20:56)   письмо автору
 
 


$info_admin = mysql_fetch_array(mysql_query("SELECT * FROM admin;"));
$dir = opendir ($info_admin['url_images']);
  while ( $file = readdir ($dir))
  {
    if (( $file != ".") && ($file != ".."))
    {
      $img[].=$file;
    }
  }
  closedir ($dir);
$count=count($img);
$show="";
$no='yes';
for($i=1;$i<=$count;$i++){
$rand_img=rand(1,$count);$count_show=count($show);
for($a=1;$a<=$count_show;$a++){
     if($img[$rand_img]==$img[$a]){$no='no';}}
if($no=='yes'){$show[].=$img[$rand_img];}
if($no=='no'){$no='yes';}
if(count($show)==$info_admin['sum_img']){break;}
}
for($i=1;$i<=$count;$i++){print $show[$i]."<BR>";}


Суть такая: нужно брать $info_admin['sum_img'] картинок из директории $info_admin['url_images'].... при этом, все картинки которые скрипт возьмет - должны быть разные. И, при этом, поскольку скрипт будет часто-посещаемым - не должен... Ну... подтормаживать.

Откровенно говоря, при таком коде ерунда какая-то получается. Код сыроват, конечно, но картинок в тестовую папочку я положил 21-у... $info_admin['sum_img'] сделал равным 15.... он мне вывел 13 картинок, повторяющихся, да среди них пробел... Вот. Что-то я тут переусложнил, видимо :(

   

Сообщения:  [1-4] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования