Задать вопрос
@paparapamalabala

Отображение списка файлов с иконками в директории?

Добрый день!
Пожалуйста помогите!
<?php
header("Content-Type: text/html; charset=utf-8");
$sPath     = '.';
$dDir      = opendir($sPath);   // открываем директорию, $dDir - дескриптор 
while ( false !== ($sFileName=readdir($dDir)) )

{
    if ($sFileName!='.' && $sFileName!='..' && $sFileName!='alldoc.php' && $sFileName!='meddoc.php')
    {
        echo ('<table><tr><td>'.$sFileName.'</td><td><a href="'.$sFileName.'">Скачать</a></td></tr></table>');
    }
}
closedir ($dDir);


?>


Скажите пожалуйста, как сделать, чтобы 1) корректно отображались названия файлов на русском языке(сейчас кракозябра) и рядом со значками, отображались иконки файлов( иконки я подготовлю).
Пожалуйста, подскажите, как сделать, чтобы выводились не все файлы, а допустим первые 10, а потом был переход на другую страницу. постраничная навигация.
Любезно прошу помощи. Спасибо.
  • Вопрос задан
  • 350 просмотров
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
Stalker_RED
@Stalker_RED
Как-то так:
header("Content-Type: text/html; charset=utf-8");
$sPath     = '.';
$dDir      = opendir($sPath);   // открываем директорию, $dDir - дескриптор 
$ignore_list = ['.', '..', 'alldoc.php', 'meddoc.php'];
while ( false !== ($sFileName = readdir($dDir)) ) {
    if (! in_array($sFileName, $ignore_list)) {
        $info = pathinfo($sFileName);
        $ext = $info['extension'];
        echo ('<table><tr><td>'
             . '<img src="/папка_с_иконками/'. $ext .'.png">'
             . $sFileName.'</td><td><a href="'.$sFileName.'">Скачать</a></td></tr></table>');
    }
}
closedir ($dDir);


php.net/manual/en/function.pathinfo.php

А на счет кракозябр - что-то не так с кодировками. Вообще это зависит от настроек окружения, но если лень разбираться можете накостылить используя iconv.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽