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

Форум PHP

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

 

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

вид форума:
Линейный форум Структурный форум

тема: не срабатывает break
 
 автор: OLi   (06.10.2010 в 21:39)   письмо автору
 
 

Есть скрипт, который должен выводить только первые 4 фото из каталога таким видом
1 2
3 4

function scan_dir($dirname) 
  { 
    // Открываем текущую директорию 
    $dir = opendir($dirname);
    // Читаем в цикле директорию 
    $b=0;
    $n=0;
    while (($file = readdir($dir)) !== false ) 
    { // Если файл обрабатываем его содержимое 
      if($file != "." && $file != "..") 
      { 
      
    $pieces = explode(".", $file);    

        echo "
         <td><a class='gallery' rel='group' title='Остальные фотографии в Подробностях' href=\"$dirname$file\">"."<img src=".$dirname.$file." id=imgd width=150 height=120></a></td>";}
    
    
         if ($n >= 2) {
    $n = 0;
    echo "</tr>";
    echo "<tr>";       }
     
$n++; 
echo $b++;
if ($b=4) {break;}
    
    }
    }
    // Закрываем директорию 
 


Не срабатывает break для значения b=4, т-е таким способом я выхожу из цикла и выводу только 4 фото из каталога....

  Ответить  
 
 автор: Gubichev   (06.10.2010 в 21:42)   письмо автору
 
   для: OLi   (06.10.2010 в 21:39)
 

не if($b=4) а if($b==4)

  Ответить  
 
 автор: OLi   (06.10.2010 в 21:46)   письмо автору
 
   для: Gubichev   (06.10.2010 в 21:42)
 

Не сработало, почему-то выводит только 2 фото, а не 4, местами даже 1

  Ответить  
 
 автор: Gubichev   (06.10.2010 в 21:59)   письмо автору
 
   для: OLi   (06.10.2010 в 21:46)
 

Условие у вас такое: если это файл, то выводим, а если нет, то не выводим. Но b++ и n++ у вас вне условия и потмоу даже если у вас попадётся "..", то b увеличится на еденицу, а фото не выведится.

  Ответить  
 
 автор: OLi   (06.10.2010 в 22:13)   письмо автору
 
   для: Gubichev   (06.10.2010 в 21:59)
 

Т-е поставить еще одно условие?
if($file != "." && $file != "..") { здесь же мои $n++}

  Ответить  
 
 автор: Gubichev   (06.10.2010 в 22:16)   письмо автору
 
   для: OLi   (06.10.2010 в 22:13)
 

$n++; 
echo $b++; 
поставьте следом за
echo "
         <td><a class='gallery' rel='group' title='Остальные фотографии в Подробностях' href=\"$dirname$file\">"."<img src=".$dirname.$file." id=imgd width=150 height=120></a></td>";

  Ответить  
 
 автор: Gubichev   (06.10.2010 в 22:17)   письмо автору
 
   для: OLi   (06.10.2010 в 22:13)
 

$n++; 
echo $b++; 
поставьте следом за
echo "
         <td><a class='gallery' rel='group' title='Остальные фотографии в Подробностях' href=\"$dirname$file\">"."<img src=".$dirname.$file." id=imgd width=150 height=120></a></td>";

  Ответить  
Rambler's Top100
вверх

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