StefanR
Erfahrenes Mitglied
Hallo,
ich habe da eine Aufgabe, die ich im Moment leider nicht alleine lösen kann. Zumindest fehlt mir ein Ansatz.
Und zwar bin ich dabei eine Navigationsklasse zu programmieren, die Datensätze quasi Seitensweise ausgibt. Zumindest legt sie den Grundstein dafür. So nun möchte ich aber nicht das bei sehr vielen Datensätzen die Seiten von 1- 100 oder so ausgebene werden. Also so wie hier im Forum da werden ja auch nur bestimmte Seitenzahlen angezeigt.
Hier ist mal die Funktion die die Navigation erstellt:
Und der Übersichthalber habe ich mal die Klasse angehängt.
ich habe da eine Aufgabe, die ich im Moment leider nicht alleine lösen kann. Zumindest fehlt mir ein Ansatz.
Und zwar bin ich dabei eine Navigationsklasse zu programmieren, die Datensätze quasi Seitensweise ausgibt. Zumindest legt sie den Grundstein dafür. So nun möchte ich aber nicht das bei sehr vielen Datensätzen die Seiten von 1- 100 oder so ausgebene werden. Also so wie hier im Forum da werden ja auch nur bestimmte Seitenzahlen angezeigt.
Hier ist mal die Funktion die die Navigation erstellt:
PHP:
function navi ($limit=2)
{
$navi='';
if ($this->total<=$perpage)
{
return $navi;
}
else
{
//wieviele seiten
$pages=intval(ceil($this->total/$this->perpage));
//errechnet die aktuelle seite
$act_site=intval(ceil(($this->site+$this->perpage) / $this->perpage));
$count=1;
//errrechnet den zurücklink
$zur=($this->site-$this->perpage);
if ($zur >= 0)
{
$navi.="<a href=\"".$this->url."/?".$this->arg."=".$zur."\">zurück</a> ";
}
while ($count<=$pages)
{
$rows=($count-1)*$this->perpage;
if ($count==$act_site)
{
$navi.="(".$count.") ";
}
else
{
$navi.="<a href=\"".$this->url."/?".$this->arg."=".$rows."\">".$count."</a> ";
}
$count++;
}
//errechnet den vorwärts link
$vor=($this->site + $this->perpage);
if ($this->total >= $vor)
{
$navi.="<a href=\"".$this->url."/?".$this->arg."=".$vor."\">weiter</a> ";
}
return $navi;
}
}
Und der Übersichthalber habe ich mal die Klasse angehängt.