🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.php
Article #231377

przewijanie stron - przydługie

#231377
From: LFC
Date: Sat, 04 Jun 2016 21:20
126 lines
4570 bytes
Mam pewien problem ze stroną. Gdy ilośc publikacji się zwiększa strona 
wyświetla u dołu klawisze cofania i postępu do przesuwania podglądu, a 
właściwie wyświetlania kolejnego zestawu publikacji w tym samym oknie.
Mniemam, że tak właśnie powinno to działać, ale nie działa. Któregokolwiek 
klawisza się nie dotknie strona zostaje na aktualnym widoku.
Nie jestem masta w php, radzę sobie z prostymi rzeczami, natomiast tutaj nie 
mam pewności, czego sie tknąć, wiec prosze o jakąś podpowiedź
Całość wg mnie jest zawarta we fragmencie pliku index.php i funkcje.php.
Oto te fragmenty -
Fragment index.php:

include "funkcje.php";
		
		if(NEWS_LIMIT>0) {
			$res1 = mysql_query("SELECT COUNT(*) FROM news 
WHERE grupa='news'") or print("SQL error count");
			$arr1 = mysql_fetch_row($res1);
			$page_limit = NEWS_LIMIT;
			list($pager_buttons, $limit) = 
pager($page_limit, $arr1[0], "index.php?zakladka=aktualnosci");
		}
		$res = mysql_query("SELECT * FROM news WHERE 
grupa='news' ORDER BY id DESC ".$limit."") or print("Error read");
		while ($news = mysql_fetch_assoc($res)) {
			echo '
			<div class="news_panel">
			<p class="news_title"><span>'.
$news['data'].'</span>'.$news['tytul'].'</p>
			<div class="news">
				'.$news['wpis'].'
			</div>';
				zalaczniki($news['zalacznik']);
			echo '
			</div>
			';
		}
		if (NEWS_LIMIT>0 and ($arr1[0] > $page_limit))	echo 
$pager_buttons;

Fragment funkcje.php:

function pager($rpp, $count, $page_back='') {
    $pages = ceil($count / $rpp);

	$pagedefault = 0;

	if($page_back!='?action=news')
		$and = "/";
	else 
		$and = "&page=";

	if(isset($_GET["page"]))
		$pager =0 + $_GET["page"];
    
	if ($pager < 0)
        $pager = $pagedefault;

    $pager_left = "";

    $mp = $pages - 1;
	$as = '<<';
    if ($pager >= 1) {
        $pager_left .= "<a class=\"page_minus\" href=\"".$page_back.$and.
($pager - 1)."\">";
        $pager_left .= $as;
        $pager_left .= "</a>";
	}
    else
        $pager_left .= "<span>$as</span>";
		
	$pager_right = "";
	$as = '>>';
    if ($pager < $mp && $mp >= 0) {
        $pager_right .= "<a class=\"page_plus\" href=\"".$page_back.$and.
($pager + 1)."\">";
        $pager_right .= $as;
        $pager_right .= "</a>";
    }
    else
        $pager_right .= "<span>$as</span>";

    if ($count) {
        $pagerarr = array();
        $dotted = 0;
        $dotspace = 3;
        $dotend = $pages - $dotspace;
        $curdotend = $pager - $dotspace;
        $curdotstart = $pager + $dotspace;
        for ($i = 0; $i < $pages; $i++) {
            if (($i >= $dotspace && $i <= $curdotend) || ($i >= $curdotstart 
&& $i < $dotend)) {
                if (!$dotted)
                    $pagerarr[] = "...";
                $dotted = 1;
                continue;
            }
            $dotted = 0;
            $start = $i * $rpp + 1;
            $end = $start + $rpp - 1;
            if ($end > $count)
                $end = $count;
			$text = $i+1;
            if ($i != $pager)
                $pagerarr[] = "<a href=\"".$page_back.$and.
$i."\">$text</a>";
            else
                $pagerarr[] = "<span>$text</span>";
        }
        $pagerstr = join(" ", $pagerarr);
        $pagerbottom = "<p class=\"pager\">$pager_left $pagerstr 
$pager_right</p>\n";
    }
    else {
        $pagerbottom  = "<p class=\"pager\">$pager_left $pager_right</p>\n";
    }

    $start = $pager * $rpp;

    return array($pagerbottom, "LIMIT $start,$rpp");
}

Lata temu, gdy strona była wykonana nie było na niej publikacji, zeby 
sprawdzić działanie tej funkcji, a teraz jest za późno na reklamacje.
Trzeba samemu kombinować. Oczywiście poza tym strona działa, jak trzeba. 
-- 
LFC
Technical Details
Message-ID: <88mb2d-eu1.ln1@mpwik2.mpwikzdw.com.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!.POSTED!mpwik2.mpwikzdw.com.pl!not-for-mail

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!.POSTED!mpwik2.mpwikzdw.com.pl!not-for-mail
From: LFC <longinf@mpwikzdw.com.pl>
Newsgroups: pl.comp.lang.php
Subject: przewijanie stron - przydługie
Followup-To: pl.comp.lang.php
Date: Sat, 04 Jun 2016 23:20:01 +0200
Organization: ICM, Uniwersytet Warszawski
Lines: 126
Message-ID: <88mb2d-eu1.ln1@mpwik2.mpwikzdw.com.pl>
NNTP-Posting-Host: dns.mpwikzdw.com.pl
Mime-Version: 1.0
X-Trace: news.icm.edu.pl 1465069202 22170 194.150.251.249 (4 Jun 2016 19:40:02 GMT)
X-Complaints-To: usenet@news.icm.edu.pl
NNTP-Posting-Date: Sat, 4 Jun 2016 19:40:02 +0000 (UTC)
User-Agent: KNode/4.3.5
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit