| |
 38.5 Кб |
|
| | Привет.
С PHP у меня очень туго. Но передо мной стоит задача, которую средствами HTML решить не могу.
Проблема такова: Я хочу выложить книги для скачивания на моем сайте, т.е. создать список книг примерно по 10 на страниц. К каждой книге подписать размер и описание.
В связи с этим есть 3 вопроса:
1) Как сделать ссылку на файл rar (zip) с помощью PHP?
2) Можно ли сделать так, чтобы размер файла высчитывался автоматически? И как это сделать?
3) (самый главный) КАК сделать список, показывающий по 10 (15, 20…) книг на странице. И как сделать, чтобы при добавлении новой книги, она (новая) становилась верхней в списке (а вторая-третьей, десятая-одиннадцатой и т.д.) ????? | |
| |
|
|
| |
|
|
| |
для: milala
(29.07.2007 в 21:28)
| | |
<?PHP
$catalog = "c:/site/localhost/links/"; // путь к папкам где ваши книги лежат
$links = "http://localhost/links/"; // ссылка на эту папку с книгами из web
//------------
$page = 0; // номер страницы
$numm = 4; // количество книг на одной странице
//------------
$dir = opendir($catalog);
while(($file = readdir($dir)))
{
if (is_file($catalog."/".$file))
{
//запихиваем файлы в массив (тут надо для безопасности сделать так чтобы ключи не повторялись, если существует такая вероятность)
$array_files[filemtime($file)] = $file;
}
}
closedir ($dir);
krsort($array_files);reset($array_files); // сортируем массив
$ttt = 0; // просто счетчик
foreach($array_files as $key => $val)
{
if ($ttt >= $page && $ttt <= $page+$numm)
{
echo "<a href=\"".$links.$val."\">".$val."</a><br>Размер: ".filesize($val)." байтов<br>Дата модификации: ".date("d/m/y",$key)."<br>";
}
$ttt++;
}
?>
|
Вот быстренько напрограммил, особо не всматривался, так что если кто найдет ошибки исправте уж :) помогите человеку с каталогами :) | |
| |
|
|
| |
|
|
| |
для: milala
(29.07.2007 в 21:28)
| | | Доступ к БД MySQL есть?
1) ссылка на файл rar (или zip) делается точно также как и на любой другой (к примеру html) файл. <a href= books/book1.rar > книга в rar-архиве </a>
Если Вы конечно не хотите считать число скачиваний или ограничивать доступ к этим файлам.
Тогда требуется ссылка на отдельный скрипт, который читает файл и выдает его в браузер.
2)функцией filesize можно получить размер в байтах.
echo filesize("books/book1.rar");
|
http://softtime.ru/scripts/pager.php
3) Это называется постраничной навигацией.
Построение скрипта зависит от того, в БД хранится информация о представляемых объектах, или в файлах. Один из примеров приведен в http://softtime.ru/scripts/pager.php Там же есть ссылки на другие реализации. | |
| |
|
|