Webstatt.org - Community seit 2006 - 2012 (2024?)

Blätterfunktion wie im Forum

Avatar user-153
03.03.2006 13:56

Viel Spaß damit!


<?php
// Copyright (C) 2006 user-148tof 'Claw' Wechselberger
if (!@function_exists("generate_sites"zwinkern) {
function generate_sites($table,$end=1,$url,$tag) {

$arrData = array();

$arrData["sql"] = mysql_query('SELECT count(*) AS count FROM '.$table);
$arrData["anz"] = mysql_result($arrData["sql"], 0, 'count'zwinkern;
mysql_free_result($arrData["sql"]);

$arrData["ges"] = floor(ceil($arrData["anz"])/$end);
$arrData["start"] = !isset($_GET[$tag]) ? $arrData["start"] = 0 : $_GET[$tag]*$end;
$arrData["nStart"] = !isset($_GET[$tag]) ? $arrData["start"] = 0 : $_GET[$tag];
$arrData["link"] = '';

$arrData["ges"] += 1;
if($arrData["nStart"]>=($arrData["ges"])) {
echo ('Seite existiert nicht!'zwinkern;
}

$page["start"] = $arrData["start"];
$page["end"] = $end;

if ($arrData["ges"]==1) { return $page; } else {

$arrData["link"] .= ($arrData["nStart"]==0 ? '' : $url.'&amp;'.$tag.'='.($arrData["nStart"]-1).'">&laquo; Zur&uuml;ck</a> 'zwinkern;
if($arrData["ges"]>7) {
$ret = array();
for($i=1;$i<=$arrData["ges"];$i++) {
if (($i*$end-$end)!=$arrData["anz"]) {
$ret[] = (($i-1)!=$arrData["nStart"] ? $url.'&amp;'.$tag.'='.($i-1).'">['.$i.']</a> ' : $i.' 'zwinkern;
}
}

if($arrData["nStart"]<5 && $arrData["nStart"]>1) {
for($j=0;$j<2+$arrData["nStart"];$j++) {
$arrData["link"] .= $ret[$j];
}
} else {
for($j=0;$j<3;$j++) {
$arrData["link"] .= $ret[$j];
}
}
$arrData["link"] .= ($arrData["nStart"]<=($arrData["ges"]-5) ? ($arrData["nStart"]>=5 ? ' ... '.$ret[$arrData["nStart"]-1].$ret[$arrData["nStart"]].(isset($ret[$arrData["nStart"]+1]) ? $ret[$arrData["nStart"]+1] : ''zwinkern : ''zwinkern : ''zwinkern;
$arrData["link"] .= ' ... '.($arrData["nStart"]==$arrData["ges"]-4 ? $ret[$arrData["ges"]-4] : ''zwinkern.$ret[$arrData["ges"]-3].$ret[$arrData["ges"]-2].$ret[$arrData["ges"]-1];
} else {

for($i=1;$i<=$arrData["ges"];$i++) {
if (($i*$end-$end)!=$arrData["anz"]) {
$arrData["link"] .= (($i-1)!=$arrData["nStart"] ? $url.'&amp;'.$tag.'='.($i-1).'">['.$i.']</a> ' : $url.'&amp;'.$tag.'='.($i-1).'">['.$i.']</a> ' );
}
}
}
$arrData["link"] .= ($arrData["nStart"]==($arrData["ges"]-1) ? '' : ' '.$url.'&amp;'.$tag.'='.($arrData["nStart"]+1).'">Forw&auml;rts &raquo;</a>'zwinkern;


return $arrData;

}

// EOF
} }

// AB HIER KANN MAN WEGSCHNEIDEN

/*
WIE MAN DIESES SKRIPT BENUTZT:
----------------------------------------------
$table = 'forum_posts'; // Die Tabelle von wo wir die Anzahl der Datensätze herholen WICHTIG: Wenn ein "WHERE" erforderlich ist, einfach hinten dranhängen!
$end = "20"; // Die Maximale Anzahl an Ausgaben pro Site
$url = '<a href="./'.basename($_SERVER['PHP_SELF']).'?thread_id=1'; // Der URL zu der Seite! WICHTIG: Die Seitenangabe wird mit "&" angehängt d.h. der Link müsste so aussehen: <a href=\"www.jex-treme.de/forum_posts.php?thread_id=123
$tag = "seite"; // Der TAG der dann am URL hinten drangehängt wird

// Da wir jetzt alles haben können wir es aufbauen:

$seiten = generate_sites($table,$end,$url,$tag);
// Die Daten von der Funktion bekommt man wie folgt:
echo $seiten["start"]."<br />";
echo $seiten["end"]."<br /><nr />";
echo $seiten["link"];
// Man muss es halt nur noch gerecht anpassen zwinkern
----------------------------------------------
*/
?>

ÖSTERREICH