Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > pl.comp.lang.php > #15151 > unrolled thread
| Started by | LFC <longinf@mpwikzdw.com.pl> |
|---|---|
| First post | 2016-06-04 23:20 +0200 |
| Last post | 2016-06-08 08:47 +0200 |
| Articles | 5 — 3 participants |
Back to article view | Back to pl.comp.lang.php
przewijanie stron - przydługie LFC <longinf@mpwikzdw.com.pl> - 2016-06-04 23:20 +0200
Re: przewijanie stron - przydługie Borys Pogoreło <borys@pl.edu.leszno> - 2016-06-04 22:35 +0200
Re: przewijanie stron - przydługie LFC <longinf@mpwikzdw.com.pl> - 2016-06-06 00:50 +0200
Re: przewijanie stron - przydługie ww <ww@o2.pl> - 2016-06-07 12:36 +0200
Re: przewijanie stron - przydługie LFC <longinf@mpwikzdw.com.pl> - 2016-06-08 08:47 +0200
| From | LFC <longinf@mpwikzdw.com.pl> |
|---|---|
| Date | 2016-06-04 23:20 +0200 |
| Subject | przewijanie stron - przydługie |
| Message-ID | <88mb2d-eu1.ln1@mpwik2.mpwikzdw.com.pl> |
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
[toc] | [next] | [standalone]
| From | Borys Pogoreło <borys@pl.edu.leszno> |
|---|---|
| Date | 2016-06-04 22:35 +0200 |
| Message-ID | <8mi6coiewnzj.p9q7xfa2kj54$.dlg@40tude.net> |
| In reply to | #15151 |
Dnia Sat, 04 Jun 2016 23:20:01 +0200, LFC napisał(a): > 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. Ten kod to jakiś koszmar. Czy NEWS_LIMIT jest większe od zera? Jak wygląda link do kolejnego zbioru wyników? -- Borys Pogoreło borys(#)leszno,edu,pl
[toc] | [prev] | [next] | [standalone]
| From | LFC <longinf@mpwikzdw.com.pl> |
|---|---|
| Date | 2016-06-06 00:50 +0200 |
| Message-ID | <qtfe2d-3ie.ln1@mpwik2.mpwikzdw.com.pl> |
| In reply to | #15152 |
Borys Pogoreło wrote: > Dnia Sat, 04 Jun 2016 23:20:01 +0200, LFC napisał(a): > >> 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. > > Ten kod to jakiś koszmar. > > Czy NEWS_LIMIT jest większe od zera? > Tak echo pokazuje, że 5 > Jak wygląda link do kolejnego zbioru wyników? > w pasku podpowiada http://www.domena.pl/index.php?zakładka=aktualnosci/1 , czy 2 w zalezności, na którym klawiszu stanie kursor, ale to nie działa niestety. -- LFC
[toc] | [prev] | [next] | [standalone]
| From | ww <ww@o2.pl> |
|---|---|
| Date | 2016-06-07 12:36 +0200 |
| Message-ID | <nj683o$du9$1@dont-email.me> |
| In reply to | #15153 |
W dniu 2016-06-06 o 00:50, LFC pisze: > Borys Pogoreło wrote: > >> Dnia Sat, 04 Jun 2016 23:20:01 +0200, LFC napisał(a): >> >>> 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. >> >> Ten kod to jakiś koszmar. >> >> Czy NEWS_LIMIT jest większe od zera? >> > > Tak echo pokazuje, że 5 > >> Jak wygląda link do kolejnego zbioru wyników? >> > > w pasku podpowiada http://www.domena.pl/index.php?zakładka=aktualnosci/1 > , czy 2 w zalezności, na którym klawiszu stanie kursor, ale to nie działa > niestety. Wygląda jakby ktoś to popsuł przy tłumaczeniu. W tym mechanizmie stronicowania jest wpisany wyjątek dla strony kończącej się na "action=news" a tu masz zmienione na "zakładka=aktualnosci". Zamiast tego /[numer] powinno wtedy być ?page=[numer] i to jest parametr, którego skrypt potem oczekuje. Nawiasem mówiąc straszny kod.
[toc] | [prev] | [next] | [standalone]
| From | LFC <longinf@mpwikzdw.com.pl> |
|---|---|
| Date | 2016-06-08 08:47 +0200 |
| Message-ID | <9nrk2d-gqo.ln1@mpwik2.mpwikzdw.com.pl> |
| In reply to | #15154 |
ww wrote: > > Wygląda jakby ktoś to popsuł przy tłumaczeniu. W tym mechanizmie > stronicowania jest wpisany wyjątek dla strony kończącej się na > "action=news" a tu masz zmienione na "zakładka=aktualnosci". Zamiast > tego /[numer] powinno wtedy być ?page=[numer] i to jest parametr, > którego skrypt potem oczekuje. > > Nawiasem mówiąc straszny kod. Dzieki! Działa. Zgadzam się, ten kod jest katastrofalny. Nie jestem masta w php, ale na ogół, gdy jest kod jest dobrze napisany jestem w stanie zrobić jakieś drobne poprawki, lub drobne rzeczy dopisać. Tu osłabłem. LFC
[toc] | [prev] | [standalone]
Back to top | Article view | pl.comp.lang.php
csiph-web