Jump to content
php.lv forumi

Pēdējā lapa, mūžīgs cikls


laucinieks

Recommended Posts

   	for($a = $page - 5; $a <= $page + 5; $a++)
   	{
   	if ($a < 1)
   	{
   	$a = 1;
   	}
   	if ($a > $total_pages)
   	{
   	$a = $total_pages
   	}
      	if($a == $page) {
         	echo("<b> $a</b> | ");
     	} else {
     	echo("  <a href=http://www.lapa.com/?page=$a> $a </a> | ");
        	}
   	}

 

Tātad viss būtu labi, bet aizejot uz pēdējo lapu, man aiziet pēdējās lapas mūžīgais cikls, piemēram ja pēdējā lapa ir 133, tad 133 + 133 + 133....

Tātad vajadzētu izdarīt tā, ja lapa ir < 5 tad a = $page, ja lapa ir > $last page - 5 tad $a <= $page.

Nu kaut kā tā.

L.

Link to comment
Share on other sites

Man vajag, lai izvada uz ekrāna tādā secībā lapas no pašreizējās lapas 5 uz atpakaļu un 5 uz priekšu, kopā lai sanāk 11 lapas + poga next un last un prev . , un first. Tās next,last,prev,first darbojas viss ok, bet tie cipari nesanāk. Gan jau ir kaut kāds elementārs risinājums, bet nenāk prātā nekas :( )!

L.

Link to comment
Share on other sites

Atradu vienu vecu savu funkciju.. mazliet pielabo savām vajadzībām un ja gribas tad savādāk "uzfrišini" un aidā...

function lapaspuses ($lapa,$lapaskopa,$links){
if ($lapa>2) {
echo '<a href="'.$links.'1/"><<</a>';
}
if ($lapa>1) {
$ieprieksejais=$lapa-1;
echo '<a href="'.$links.$ieprieksejais.'/"><</a><a href="'.$links.'1/">1</a>';
}
if ($lapa>5) {
$atpakaljdp=$lapa-4;
echo '<a href="'.$links.$atpakaljdp.'/">...</a>';
}
if ($lapa>4) {
$atpakaljdp=$lapa-3;
echo '<a href="'.$links.$atpakaljdp.'/">'.$atpakaljdp.'</a>';
}
if ($lapa>3) {
$atpakaljdp=$lapa-2;
echo '<a href="'.$links.$atpakaljdp.'/">'.$atpakaljdp.'</a>';
}
if ($lapa>2) {
$atpakaljdp=$lapa-1;
echo '<a href="'.$links.$atpakaljdp.'/">'.$atpakaljdp.'</a>';
}
if ($lapa>=1) {
echo '<b>'.$lapa.'</b>';
}
//uzprieksju
if ($lapa<$lapaskopa) {
$prieksjdp=$lapa+1;
echo '<a href="'.$links.$prieksjdp.'/">'.$prieksjdp.'</a>';
}
$lk=$lapaskopa-1;
if ($lapa<$lk) {
$prieksjdp=$lapa+2;
echo '<a href="'.$links.$prieksjdp.'/">'.$prieksjdp.'</a>';
}
$lk=$lapaskopa-2;
if ($lapa<$lk) {
$prieksjdp=$lapa+3;
echo '<a href="'.$links.$prieksjdp.'/">'.$prieksjdp.'</a>';
}
$lk=$lapaskopa-4;
if ($lapa<$lk) {
$prieksjdp=$lapa+4;
echo '<a href="'.$links.$prieksjdp.'/">...</a>';
}
if ($lapa<$lapaskopa) {
echo '<a href="'.$links.$lapaskopa.'/">'.$lapaskopa.'</a>';
}
if ($lapa<$lapaskopa) {
$prieksjdp=$lapa+1;
echo '<a href="'.$links.$prieksjdp.'/">></a>';
}
if ($lapa<$lapaskopa) {
echo '<a href="'.$links.$lapaskopa.'/">>></a>';
}
}

 

Pēc tam piemēram:

<?php lapaspuses (37,54,'links/lapa/'); ?> <br />
<?php lapaspuses (1,54,'links/lapa/'); ?> <br />
<?php lapaspuses (2,54,'links/lapa/'); ?> <br />
<?php lapaspuses (53,54,'links/lapa/'); ?> <br />
<?php lapaspuses (54,54,'links/lapa/'); ?>

 

Tavā piemērā :

<?php lapaspuses ($page,$total_pages,'http://www.lapa.com/?page='); ?>

Link to comment
Share on other sites

Kungs pasargdievs āmen.

 

function draw_pages($count, $perpage, $offset = 5) {
   $pages = ceil($count/$perpage);
   if($pages < 2) return '';
   $r = '<br />';
   $page = (empty($_GET['p']) || $_GET['p'] < 2) ? 1 : (int)$_GET['p'];
   $first = $page >= $offset+1 ? $page-$offset : 1;
   $last = $page <= $pages-$offset ? $page+$offset : $pages;
   if($page > 4) $r.= sprintf('?p=1">«</a><a href="?p=%d"><</a>', $page-1);
   for($i = $first; $i <= $last; $i++) $r.= sprintf('%s<a href="?p=%d" style="color: white;background: #eaeaea;border: 1px solid #ccc;margin: 4px 1px 4px 1px;color: #000;text-decoration: none; padding: 3px; float: left;">%d</a>', $page==$i ? '' : '', $i, $i);
   if($pages > 4) $r.= sprintf('<a href="?p=%d">></a><a href="?p=%d">»</a>', $page+1, $pages);
   return '<div style="width: 900px; float: left;"><div style="font-size: 14px;">'.$r.'</div></div>';
}

 

Pielietojumu ja nu vaig, tad saki.

Autortisības šai funkcijai ja nemaldos ir Mārcim ! :) Strādā labi.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...