Вы не зашли.
Главная » PHP » opendir
#1. W@P Off (2)
Участник
2012.08.12 01:01
Подскажите пожалуйста, как в моем скриптике читалке txt файлов, зделать с помощью opendir выводить по 25файлов на страницу, и добавить переключение между страницами
пред. след.
Вложения
wapinet.txt 403b [загрузок: 485]
#2. tipsun Off (19)
Moderator
2012.08.12 03:03
W@P, принцип будет приблизительно таким:
- получение номера страницы.
- расчет точки начала показа. Текущая страница минус единица полученное умножить на количество эл. на страницу (в твоем случае на 25)
- в твоем цикле проверять достигло ли значение++ начальной точки показа. Если не достигло continue, если достигло будет выполняться код ниже.
- поставить ссылки вручную указав текущая/полученная станица -1 и +1 (туда и сюда)
- - - -
Вроде ничего не забыл. Я бы код написал, но с этого телефона долго. Если не получится у тебя, то напишу днем.
#3. tipsun Off (19)
Moderator
2012.08.12 04:04
И точку остановки надо естественно расчитать, просто к началу прибавить число эл. на стр. (25).
если значение++ соответствует точке остановки, break.
можно без страниц, просто передавать количество эл на страницу.
#4. W@P Off (2)
Участник
2012.08.12 14:02
Мне хотелось,чтобы папка листалась(не тхт файлы) автоматически.
case :
не подходить, страниц слишком много будет...
#5. tipsun Off (19)
Moderator
2012.08.12 15:03
Код:
<?php
 
header('Content-Type: text/html; charset=UTF-8;');
 
$items 25// эл. на стр.
 
if($handle opendir('.')) {
    
    $page = (isset($_GET['page']) and $_GET['page']) ? (int) $_GET['page'] : 1;
    
    $start = ($page 1) * $items;
    $stop  $start $items;
    
    $i 0;
    while(false !== ($file readdir($handle))) {
        
        if ('.' != $file && '..' != $file) {
            
            $i += 1;
            
            if ($i <= $start) {
                
                continue;
            }
            
            echo '<a href="' htmlspecialchars($fileENT_COMPAT) . '">Читать ' htmlspecialchars($fileENT_NOQUOTES) . '</a><br/>';
            
            if ($i >= $stop) {
                
                break;
            }
        }
    }
    
    closedir($handle);
    
    if ($i 0) {
        
        echo '<a href="?page=' . ($page 1) . '">Назад</a> | <a href="?page=' . ($stop $i $page $page 1) . '">Вперед</a>';
    }
}
Отредактировано tipsun (2012.08.12 15:03)
#6. tipsun Off (19)
Moderator
2012.08.12 15:03
W@P написал:
Мне хотелось,чтобы папка листалась(не тхт файлы) автоматически.
case :
не подходить, страниц слишком много будет...
У тебя есть:
красная ссылка
синяя ссылка
У каждой есть свои плюсы.
Выбор за тобой.
PS. это не фильм, думай сам, что выбрать smile
Отредактировано tipsun (2012.08.12 15:03)
#7. W@P Off (2)
Участник
2012.08.12 17:05
TIPSUN, ОГРОМНОЕ СПАСИБО ЗА ПОМОЩЬ... smile smile smile
#8. tipsun Off (19)
Moderator
2012.08.12 23:11
Код:
<?php
 
if (== $page) {
    
    echo 'Назад'
}
else {
    
    echo '';
}
#9. W@P Off (2)
Участник
2012.08.13 01:01
TIPSUN, Спасибо! Все ок! smile
Страниц: 1
Главная
WEB
PunBB Mod v0.6.2
0.013 s