<?PHP
// class beginnen
class PageNav
{
// de functie die onze navigatie gaat maken
// $iPagina = pagina waarop de gebruiker zit
// $iTotaalPagina = totaal aantal paginas
// $sPagina = link naar de pagina
function nav($iPagina, $iTotaalPagina, $sPagina)
{
// nieuwe var maken, hierin komt de nav te staan
$this->sNav = "";
// kijken of er al een ? in de url staat
// als dit zo is, gebruiken we de & om nav in de url te zetten
if(ereg("[?]", $sPagina))
{
// er staat een ? in de url, dus gaan we & gebruiken
$this->sAdd = "&";
} else
{
// er staat nog geen ? in de url, dus gaan we ? gebruiken
$this->sAdd = "?";
}
// kijken of de gebruiker op de eerste pagina zit
if(($iPagina-1) > -1)
{
// nee, de gebruiker zit op een pagina hoger dan 0
$this->sNav .= "<A HREF='".$sPagina.$this->sAdd."nav=".($iPagina-1)."'>Vorige</A> - ";
}
// de nummering
// 1 - 2 - 3
for($i = 0; $i < $iTotaalPagina; $i++)
{
// is de huidige pagina gelijk aan &i ?
if($i == $iPagina)
{
// ja, de gebruiker zit op pagina $i
// dus maken we hier de $i bold
// de gebruiker zit immers al op deze pagina
$this->sNav .= "<b>".($i+1)."</b> - ";
} else
{
// nee, de gebruiker zit op een andere pagina
// dus we maken er een gewone link van
$this->sNav .= "<A HREF='".$sPagina.$this->sAdd."nav=".$i."'>".($i+1)."</A> - ";
}
}
// zit de gebruiker op de laatste pagina
if(($iPagina+1) <= $iTotaalPagina)
{
// nee, de gebruiker zit nog niet op de laatste pagina
$this->sNav .= "<A HREF='".$sPagina.$this->sAdd."nav=".($iPagina+1)."'>Volgende</A> - ";
}
// het laatste streepje van $this->sNav afhalen
$this->sNav = subStr($this->sNav, 0, strLen($this->sNav)-3);
// de nav teruggeven
return $this->sNav;
}
}
?>
<?PHP
// class beginnen
class PageNav
{
// de functie die onze navigatie gaat maken
// $iPagina = pagina waarop de gebruiker zit
// $iTotaalPagina = totaal aantal paginas
// $sPagina = link naar de pagina
function nav($iPagina,$iTotaalPagina,$sPagina)
{
// nieuwe var maken, hierin komt de nav te staan
$this->sNav="";
// kijken of er al een ? in de url staat
// als dit zo is, gebruiken we de & om nav in de url te zetten
<?PHP
// de class includen
include("class.PageNav.inc.php");
// de class starten
$cPageNav = new PageNav;
// max aantal berichten per pagina
$iMax = 5;
// checken of er een nav= in de url staat
if(IsSet($_GET['nav']) && Is_Numeric($_GET['nav']))
{
// ja, die staat er
// hier ophalen, *$iMax doen en in $iPagina zetten
$iPagina = $_GET['nav']*$iMax;
} else
{
// nee, die staat er niet
// dus niet ophalen, en *$iMax hoeft ook niet
// 0*$iMax is natuurlijk nog steeds 0
$iPagina = 0;
}
// query voor het tellen van aantal berichten
$sQueryAantal = "SELECT COUNT(id) AS aantal FROM reacties WHERE topicID=".$_GET['id'];
// query uitvoeren
if(!$rResultAantal = MySQL_Query($sQueryAantal))
{
// er is een fout in de query
echo "Error!- Kan de query niet uitvoeren!";
echo MySQL_Error()."<br />".MySQL_Errno();
} else
{
// aantal berichten in $iAantal zetten
$iAantal = ceil(MySQL_Result($rResultAantal, 0, "aantal")/$iMax);
// normale query, deze is voor de gegevens van pagina $iPagina
$sQuery = "SELECT titel FROM reacties ORDER BY id DESC LIMIT ".$iPagina.", ".$iMax." WHERE topicID=".$_GET['id'];
if(!$rResult = MySQL_Query($sQuery))
{
// de query kan niet worden uitgevoerd
echo "Error!- Kan de query niet uitvoeren!";
echo MySQL_Error()."<br />".MySQL_Errno();
} else
{
// loopje die titels e.d. weergeeft
while($aFetch = MySQL_Fetch_Assoc($rResult))
{
echo $aFetch['titel']."<br />";
}
// de navigatie echoën
echo $cPageNav->nav($iPagina, $iAantal, "forum/viewtopic.php?id=5");
}
}
?>