|
|
|
| Как сделать постраничный вывод картинок (GIF) из папки не используя текстовые файлы или MySQL? | |
|
|
|
|
|
|
|
для: Dims
(06.12.2004 в 22:32)
| | Следует отталкиваться от следующего скрипта:
<?php
// Путь к директории
$dirname = "F:\\photoes\\2";
// Выводим по 9 фотографий на странице
$pnumber = 9;
// Скрипт, принимает параметр start,
// который определяет начиная с какой
// фотографии их следует выводить
if(empty($_GET['start'])) $_GET['start'] = 0;
// Открываем директорию
$dir = opendir($dirname);
if(!$dir) exit("Директория не открыта");
// Подсчитываем число картинок в директории
$count = 0;
// В цикле считываем её содержимое
while($file = readdir($dir))
{
// Если текущий объект является файлом - считаем его
if($file != "." && $file != "..") $filenames[] = $file;
}
// Закрываем директорию
closedir($dir);
// Заносим число файлов в массив
$count = count($filenames);
// После того, как мы выяснили число картинок
// в директории, нужно проследить не вылазит ли значение
// параметра start за допустимое
if(($_GET['start'] + $pnumber)>$count) $_GET['start'] = $count - $pnumber;
// Выводим фотографии
echo "<table border=1>";
$k = 0;
print_r($filenames);
for($i = $start; $i<$start + $pnumber; ++$i)
{
++$k;
if($k==1) echo "<tr><td><img alt='$filenames[$i]' src=$filenames[$i]></td>";
else if($k!=3) echo "<td><img alt='$filenames[$i]' src=$filenames[$i]></td>";
else
{
$k = 0;
echo "<td><img alt='$filenames[$i]' src=$filenames[$i]></td></tr>\n";
}
}
echo "</table>";
// Выводим ссылки на другие страницы
$number = (int)($count/$pnumber);
if((float)($count/$pnumber) - $number != 0) $number++;
for($i = 1; $i<=$number; $i++)
{
if($number == $i)
{
if($start == $i)
echo "[".(($i - 1)*$pnumber + 1)."-$count]";
else
echo "<a href=readdir.php?start=".(($i - 1)*$pnumber).">[".(($i - 1)*$pnumber + 1)."-$count]</a>";
}
else
{
if($start == $i)
echo "[".(($i - 1)*$pnumber + 1)."-".$i*$pnumber."]";
else
echo "<a href=readdir.php?start=".(($i - 1)*$pnumber).">[".(($i - 1)*$pnumber + 1)."-".$i*$pnumber."]";
}
}
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(06.12.2004 в 23:59)
| | А как поменять директорию? Допустим, на /img? Он ее ненаходит! | |
|
|
|
|
|
|
|
для: Dims
(07.12.2004 в 20:46)
| | Находит ;) Правда я бы внес пару изменений =) readdir.php?start= на $PHPSELF.'?start | |
|
|
|
|
|
|
|
для: Dims
(07.12.2004 в 20:46)
| | Это не сложно, но возникает вопрос как расположены друг относительно друга /img и приведённый выше скрипт... | |
|
|
|
|
|
|
|
для: cheops
(07.12.2004 в 23:53)
| | >Это не сложно, но возникает вопрос как расположены друг
>относительно друга /img и приведённый выше скрипт...
Скрипт и папка /img находяться в одной папке. А папку /img он ненаходит:
Array ( [0] => gif (1).gif [1] => gif (10).gif [2] => gif (11).gif [3] => gif (12).gif [4] => gif (13).gif [5] => gif ... и т.д. | |
|
|
|
|
|
|
|
для: Dims
(08.12.2004 в 14:04)
| | А как прписана папка img? Так:
<?php
// Путь к директории
$dirname = "img";
?>
|
>Array ( [0] => gif (1).gif [1] => gif (10).gif [2] => gif
>(11).gif [3] => gif (12).gif [4] => gif (13).gif [5] => gif
>... и т.д.
А это что за загадочная конструкция? Это то, что должно быть? | |
|
|
|