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

Форум PHP

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

 

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

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

тема: помогите с выводом
 
 автор: devil   (08.05.2007 в 09:37)   письмо автору
 
 

подскажите пожалуйста или лучше на примере, мне нужно вывести фотки из папки по 6 штук, и переходить по страницам.
Я чуть чуть накидал и что то запутался.
$galery=array();
$galdir="foto";
$dir=opendir($galdir);
while(($item=readdir($dir)) !==false)
{
if(!ereg("^(.*)\\.(gif|jpeg|png)",$item,$p)) continue;
$path_to_file="$item";

$size=@getimagesize($path_to_file);
$galery[$item]=array(
'name'=> $item,
'url'=>$path_to_file,
'w'=>$size[0],
'h'=>$size[1],
'wh'=>$size[2],
);
}
ksort($galery);
$c=count($galery);
echo "<br><table>";
$count=0;
if ($c>6){
$num=bcdiv($c,6);
for ($i=1; $i<=$num;$i++){
echo "<a href=foto.php?page=$i>$i</a>";
}
}
foreach($galery as $k=>$v)
{
if ($count % 3 ==0) echo "<tr>";
echo "<td>";
echo "<a href=foto/".$v[url]."><img src=foto/".$v[url]." width=200 height=200><br>$v[url]</a>";
echo "</td>";
$count++;
}
echo "</tr></table></body></html>";

   
 
 автор: Loki   (08.05.2007 в 10:19)   письмо автору
 
   для: devil   (08.05.2007 в 09:37)
 

Примерно так. На работоспособность проверьте сами.
<?
$page
=intval($_GET['page']);
$page=$page<1?1:$page;
$limit=12 //12 фотографий на странице
$start=($page-1)*$limit;

$count=0;
for(
$i=$start$i<=$start+$limit$i++)
{
if (
$count ==0) echo "<tr>";
echo 
"<td>";
echo 
"<a href=foto/".$galery[$i][url]."><img src=foto/".$galery[$i][url]." width=200 height=200><br>$galery[$i][url]</a>";
echo 
"</td>";
if (
$count ==0) echo "</tr>";
$count++;
}

   
 
 автор: bronenos   (08.05.2007 в 11:47)   письмо автору
 
   для: Loki   (08.05.2007 в 10:19)
 

через каждые 3 раза будет пустая строка

   
 
 автор: Loki   (08.05.2007 в 12:09)   письмо автору
 
   для: bronenos   (08.05.2007 в 11:47)
 

Аргументируйте

   
 
 автор: bronenos   (08.05.2007 в 12:50)   письмо автору
 
   для: Loki   (08.05.2007 в 12:09)
 

сори, ошибся...

   
 
 автор: devil   (08.05.2007 в 12:25)   письмо автору
 
   для: Loki   (08.05.2007 в 10:19)
 

жаль но это не выходит, он не может понять $galery[$i][url]

   
 
 автор: Loki   (08.05.2007 в 12:30)   письмо автору
 
   для: devil   (08.05.2007 в 12:25)
 

ну в общем и не должен вроде...
у вас в $galery что содержится?

   
 
 автор: devil   (08.05.2007 в 12:35)   письмо автору
 
   для: Loki   (08.05.2007 в 12:30)
 

$galery это массив в который заносится имена файлов вот так

$galery=array();
$galdir="foto";
$dir=opendir($galdir);
while(($item=readdir($dir)) !==false)
{
if(!ereg("^(.*)\\.(gif|jpeg|png)",$item,$p)) continue;
$path_to_file="$item";
$size=@getimagesize($path_to_file);
$galery[$item]=array(
'name'=> $item,
'url'=>$path_to_file,
);

   
 
 автор: Loki   (08.05.2007 в 14:18)   письмо автору
 
   для: devil   (08.05.2007 в 12:35)
 

либо присваивайте ему числовые индексы, либо останетесь без постраничной навигации:)

   
Rambler's Top100
вверх

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