PHP gevorderde |
|
IK heb hier een class die ervoor zorgt voor de weergave van mijn vorige volgende ... maar ik zou graag mijn class willen hebben zodat je vorige appart kunt oproepen, die cijfers appart kunt oproepen en de volgende appart kunt oproepen maar hoe moet ik dan mijn class maken?
zo print ik momenteel alles te samen:
<?
print $nav->makenav();
?>
<?
class pagenav
{
function pagenav ($totaal, $perpage, $current, $linkstart)
{
/*
$totaal = Totaal aantal items (mysql_num_rows)
$perpage = Het max. aantal items per pagina
$current = Is de huidige $nav pagina (?nav=2 oid)
$linkstart = Is wat achter de ? en voor &nav= staat. Voorbeeld: $linkstart = "PageID=1&Mail=ja&Skin=1";
*/
$this->totaal = $totaal;
$this->perpage = $perpage;
if (!$current > 0) $current = 1;
$this->current = $current;
$this->linkstart = $linkstart;
}
function get_startpoint ()
{
/*
Met deze functie krijg je een getal terug wat je voor LIMIT $getal, $aantal kan gebruiken.
*/
$p = $this->current - 1;
$r = $p * $this->perpage;
return $r;
}
function makenav ()
{
/*
Deze functie geeft een string terug met daarin : Vorige | 1 | 2 | 3 | 4 | Volgende
*/
$this->pages = $this->totaal / $this->perpage;
$this->pages = ceil($this->pages);
for ($i = 1; $i < $this->pages + 1; $i++)
{
if ($this->current == $i)
{
$nav[] = "<B>".$i."</B>";
}
else
{
$nav[] = "<a href='?" . $this->linkstart . "&nav=" . $i . "'>".$i."</a>";
}
}
if ($this->current != 1)
{
array_unshift($nav, "<a href='?" . $this->linkstart . "&nav=" . ($this->current - 1) . "'>Vorige</a>");
}
else
{
array_unshift($nav, "Vorige");
}
if ($this->current < $this->pages)
{
$nav[] = "<a href='?" . $this->linkstart . "&nav=" . ($this->current + 1) . "'>Volgende</a>";
}
else
{
$nav[] = "Volgende";
}
$nav = implode (" | ", $nav);
return $nav;
}
}
?>
<? class pagenav { function pagenav ($totaal, $perpage, $current, $linkstart) { /* $totaal = Totaal aantal items (mysql_num_rows) $perpage = Het max. aantal items per pagina $current = Is de huidige $nav pagina (?nav=2 oid) $linkstart = Is wat achter de ? en voor &nav= staat. Voorbeeld: $linkstart = "PageID=1&Mail=ja&Skin=1"; */ $this->totaal = $totaal; $this->perpage = $perpage; if (!$current > 0) $current = 1; $this->current = $current; $this->linkstart = $linkstart; } function get_startpoint () { /* Met deze functie krijg je een getal terug wat je voor LIMIT $getal, $aantal kan gebruiken. */ $p = $this->current - 1; $r = $p * $this->perpage; return $r; } function makenav () { /* Deze functie geeft een string terug met daarin : Vorige | 1 | 2 | 3 | 4 | Volgende */ $this->pages = $this->totaal / $this->perpage; $this->pages = ceil($this->pages); for ($i = 1; $i < $this->pages + 1; $i++) { if ($this->current == $i) { $nav[] = "<B>".$i."</B>"; } else { $nav[] = "<a href='?" . $this->linkstart . "&nav=" . $i . "'>".$i."</a>"; } } if ($this->current != 1) { array_unshift($nav, "<a href='?" . $this->linkstart . "&nav=" . ($this->current - 1) . "'>Vorige</a>"); } else { } if ($this->current < $this->pages) { $nav[] = "<a href='?" . $this->linkstart . "&nav=" . ($this->current + 1) . "'>Volgende</a>"; } else { $nav[] = "Volgende"; } return $nav; } } ?>
|