Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: вывод изображений
Форумы портала PHP.SU » » Графика в PHP » вывод изображений

Страниц (1): [1]
 

1. unixdifferent - 01 Декабря, 2011 - 17:09:03 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1.  
  2.  
  3. <head><title>архетиктура</title>
  4. <meta http-equiv=Content-Type content="text/html; charset=utf-8">
  5. </head>
  6. <body style="background-color:#FFF;">
  7.         <div style="display: inherit;width:100%;">
  8.  
  9. <?PHP
  10.  
  11.         $dir = '/images/galereya/';
  12.         $count=0;
  13.         if (is_dir($dir)) {
  14.                 if ($dh = opendir($dir)) {
  15.                         while (($file = readdir($dh)) !== false)
  16.                         {
  17.                                 if(($file!='.')and($file!='..'))
  18.                                 $files[]=$file;
  19.                                 $count++;
  20.                         }
  21.                         closedir($dh);
  22.                 }
  23.         }
  24.  
  25. $col_width[1] = '17%';
  26. $col_width[2] = '24%';
  27. $col_width[3] = '16%';
  28. $col_width[4] = '25%';
  29. $col_width[5] = '17%';
  30.  
  31. //$b=count($files);
  32. for($i=1;$i<6 ;$i++){
  33.         echo '<div style="width:'.$col_width[$i].';display:inline-block;vertical-align:top;margin:1px;">';
  34.         for($pi=0;$pi<5;$pi++){
  35.                 echo '<img width="100%" src="images/galereya/'.$files[$pi].'"><br>';
  36.         }
  37.         echo '</div>';
  38. }
  39. ?>
  40.  
  41.         </div>
  42. </body>
  43. </html>
  44.  



прикол в том что мне выводит в 5 колонок одни и теже картинки а мне нужно что бы выводило в разные калонки разные картинки не повторяясь.... помогите с решением задачи или подскажите куда копать.
Заранее спасибо
2. Данил_123 - 01 Декабря, 2011 - 17:17:00 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1.         for($pi=0;$pi<5;$pi++){
  2.                 echo '<img width="100%" src="images/galereya/'.$files[$pi].'".jpg><br>';
  3.         }


Формат кто указывать будет? images/galereya/1.jpg <- например
3. Microteam - 01 Декабря, 2011 - 17:18:48 - перейти к сообщению
Здравствуйте, а можно поподробнее разъяснить проблему?
4. unixdifferent - 01 Декабря, 2011 - 17:25:58 - перейти к сообщению
спасибо за формат подсказку, но это не решает проблему) и так выводит фотки. проблема в том что есть 5 колонок где в каждой должны быть разные картинки , а выводится во всех колонках одно и тоже Не понял
5. CenapaTop - 01 Декабря, 2011 - 17:31:12 - перейти к сообщению
идет перебор первых пяти картинок

при $i = 1 $pi с 0 до 4
при $i = 2 $pi с 0 до 4
и т.д.
6. Microteam - 01 Декабря, 2011 - 17:36:42 - перейти к сообщению
Если я правильно вас понял..

PHP:
скопировать код в буфер обмена
  1.  
  2. <head><title>архетиктура</title>
  3. <meta http-equiv=Content-Type content="text/html; charset=utf-8">
  4. </head>
  5. <body style="background-color:#FFF;">
  6.         <div style="display: inherit;width:100%;">
  7.  
  8. <?PHP
  9.  
  10.         $dir = '/images/galereya/';
  11.         $sc = scandir($dir);
  12.        
  13.        
  14. $col_width[1] = '17%';
  15. $col_width[2] = '24%';
  16. $col_width[3] = '16%';
  17. $col_width[4] = '25%';
  18. $col_width[5] = '17%';
  19.  
  20. //$b=count($files);
  21. $q = 1;
  22. foreach($sc as $a){
  23. if ($a != "." && $a != "..") {
  24.         echo '<div style="width:'.$col_width[$q].';display:inline-block;vertical-align:top;margin:1px;">';
  25.                 echo '<img width="100%" src="images/galereya/'.$a.'"><br>';
  26.         echo '</div>';  
  27.         }  
  28. if ($q == 5) $q = 0;
  29. }
  30. ?>
  31.  
  32.         </div>
  33. </body>
  34. </html>
  35.  
  36.  
7. unixdifferent - 01 Декабря, 2011 - 17:52:14 - перейти к сообщению
спасибо понял. есть еще пару моментов как решу полностью задачу отпишу как решил.
вот как-то так
$per_col = round($count / 5);
//echo $count;
//echo $per_col;
for($i=0;$i<5 ;$i++){
echo '<div style="width:'.$col_width[$i+1].';display:inline-block;vertical-align:top;margin:1px;">';
for($pi=1;$pi<=$per_col;$pi++){
echo '<img width="100%" src="images/galereya/'.$files[$pi+$i*$per_col].'"><br>';
}
echo '</div>';
}
?>
8. Microteam - 02 Декабря, 2011 - 12:30:47 - перейти к сообщению
Цитата:
спасибо понял

Благодарность проявляем на кнопке спасибо)))))
9. Мелкий - 02 Декабря, 2011 - 12:40:10 - перейти к сообщению

Microteam, от 50 сообщений нужно, чтобы кнопку тыкать

 

Powered by ExBB FM 1.0 RC1