Форум dkLab и Denwer
Здесь общаются Web-разработчики.
Генеральный спонсор:
Хостинг «Джино»

прокрутка по страницам (tribesman)
Author Message
tribesman
Заглянувший



Joined: 18 Oct 2004
Posts: 6
Карма: 0
   поощрить/наказать


PostPosted: Mon Oct 18, 2004 11:51 am ()
   Post subject: прокрутка по страницам
Reply with quote

Надеюсь, что эта функция кому нить пригодиться.
сам я ей пользуюсь оч часто.
Code (php): скопировать код в буфер обмена
//
//
//
//
//
//
//
function scroll($fself, $numpages, $n, $digitals, $d_num, $d_style, $arr){
        if(empty (www.php.net/empty)($n))$n=1;
        $scroll = '';
        //
        if($numpages>1){
                //
                if($n>1)$scroll .='<a href="'.$fself.'&n='.($n-1).'">'.$arr[0].'</a>';
                else $scroll .=$arr[0];
                $scroll .= ' ';
               
                //
                if($digitals==1){
                        //
                        if($numpages>$d_num){
                                $numpages--;
                                $scroll .='<span '.$d_style[0].'>...</span> ';
                                $point=ceil (www.php.net/ceil)($d_num/2);
                               
                                //
                                if( $n<=$point){
                                        for($i=1;$i<=$d_num;$i++){
                                                if($i!=$n) $scroll .='<a href="'.$fself.'&n='.$i.'" '.$d_style[0].'>'.$i.'</a> ';
                                                else $scroll .='<span '.$d_style[1].'>'.$i.'</span> ';
                                        }
                                //
                                }elseif( ($n+$point)<=$numpages ){
                                        for($i=($n-($point-1));$i<=($n+($point-1));$i++){
                                                if($i!=$n) $scroll .='<a href="'.$fself.'&n='.$i.'" '.$d_style[0].'>'.$i.'</a> ';
                                                else $scroll .='<span '.$d_style[1].'>'.$i.'</span> ';
                                        }
                                //
                                }else{
                                        if( ($n+($point-1))<=$numpages)$st=$n-($point-1);
                                        else $st=1+$numpages-$d_num;
                                        for($i=$st;$i<=($st+$d_num-1);$i++){
                                                if($i!=$n) $scroll .='<a href="'.$fself.'&n='.$i.'" '.$d_style[0].'>'.$i.'</a> ';
                                                else $scroll .='<span '.$d_style[1].'>'.$i.'</span> ';
                                        }       
                                }
                                $scroll .='<span '.$d_style[0].'>...</span> ';                               
                        //
                        }else{
                                for($i=1;$i<=$numpages;$i++){
                                        if($i!=$n) $scroll .='<a href="'.$fself.'&n='.$i.'" '.$d_style[0].'>'.$i.'</a> ';
                                        else $scroll .='<span '.$d_style[1].'>'.$i.'</span> ';
                                }                               
                        }
                }
                //
                if( ($n+1)<=$numpages )$scroll .= '<a href="'.$fself.'&n='.($n+1).'">'.$arr[1].'</a>';
                else $scroll .=$arr[1];
        }
        return $scroll;
}
если уж очень нужно ЧПУ
Code (php): скопировать код в буфер обмена
//
$scroll = str_replace (www.php.net/str_replace)('&n=', $fself, $scroll);
$scroll = preg_replace (www.php.net/preg_replace) ( '/'.$fself.'([0-9]+)/', $temp.'\\1.html', $scroll);
возможно где то, что то не правлиьно)
поправте иправлюсь)
Back to top
View user's profile Send private message
Евгений Галашин
Модератор



Joined: 29 Dec 2003
Posts: 1861
Карма: 32
   поощрить/наказать


PostPosted: Mon Oct 18, 2004 7:32 pm (спустя 7 часов 40 минут; написано за 22 секунды)
   Post subject:
Reply with quote

Баян...
forum.dklab.ru/php/advises/FunctionsForPages.html
Back to top
View user's profile Send private message
Чебурген
Участник форума



Joined: 05 Sep 2004
Posts: 129
Карма: -36
   поощрить/наказать


PostPosted: Mon Oct 18, 2004 8:19 pm (спустя 47 минут; написано за 1 минуту 50 секунд)
   Post subject:
Reply with quote

Очень странно, кстати, что в этот форум может помещать код любой человек с улицы, а не облеченный властью надзир.. ой - модератор.
Как бы, очевидно, что автор произведения - наихудший критик.
Почему бы не помещать свои творения на суд общественности в "прочее", а после, окончательную и исправленную версию, если она того заслуживает, модератор перенесет в "склад"?
Back to top
View user's profile Send private message Send e-mail
tribesman
Заглянувший



Joined: 18 Oct 2004
Posts: 6
Карма: 0
   поощрить/наказать


PostPosted: Mon Oct 18, 2004 8:36 pm (спустя 16 минут; написано за 11 секунд)
   Post subject:
Reply with quote

2 Чебурген хмм.. ты прав, как то не думал об этом
Евгений Галашин может баян, а может и нет
это скрипт выводит циферки, если страниц например 100 то циферок будет столько скока вы указали и побакам троеточия, и эта линейка из циферок будет прокручиваться..
помоему удобно..
Back to top
View user's profile Send private message
Евгений Галашин
Модератор



Joined: 29 Dec 2003
Posts: 1861
Карма: 32
   поощрить/наказать


PostPosted: Mon Oct 18, 2004 10:15 pm (спустя 1 час 38 минут; написано за 1 минуту)
   Post subject:
Reply with quote

tribesman:
pear.php.net/package/Pager
++ Приведённая выше тема. (Пост jahson).
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic All times are GMT + 3 Hours
Page 1 of 1    Email to a Friend.
You cannot post new topics in this forum. You cannot reply to topics in this forum. You cannot edit your posts in this forum. You cannot delete your posts in this forum. You cannot vote in polls in this forum. You cannot attach files in this forum. You can download files in this forum.
XML