#1 23. Februar 2008 Seitenzahl Abkürzung? Moin zusamm, ich brauch hüüülfööö Und zwar hab ich Seitenzahlen auf meiner Seite, nur die würden nie enden*lol Nun gibts doch genug Seiten die haben 1,2,3,4,5,6,7,8,9, ... 123,124,125,126 Oder so. Ähnlich wie hier: {bild-down: http://undergroundimagez.us/thumbs/329781seiten.jpg} Wie könnt ich das bei mir machen? Code wäre dieser: PHP: <? php $abfrage = mysql_query ( "SELECT * FROM video_uploads" ); $set1 = 15 ; $seiten = mysql_num_rows ( $abfrage ); $seiten = $seiten / $set1 ; $seiten = ceil ( $seiten ); $x2 = 1 ; $x = 0 ; echo "<strong></strong> " ; $count = 0 ; $buf = false ; $skipAfterPages = 10 ; $skip = intval ( $_GET [ 'skip' ]); for( $i = 0 ; $i < $seiten ; $i ++) { $newskip = $i * $set1 ; if( $i == ( $skip / $set1 )) echo "<strong>" ; echo "<a href=\"index.php?sort= $_GET [ sort ] &skip= $newskip \">" .( $i + 1 ). "</a> " ; if( $i == ( $skip / $set1 )) echo "</strong>" ; } ?> + Multi-Zitat Zitieren
#2 24. Februar 2008 AW: Seitenzahl Abkürzung? machst eben beim for loop maximal 10 und dann in die variable $i immer deine aktuelle seite -5 reinspeichern, dann hast du immer 5 seiten zurück und 5 seiten vor... + Multi-Zitat Zitieren
#3 24. Februar 2008 AW: Seitenzahl Abkürzung? Schaut dir mal diese Funktion an, die verwende ich für ein Projekt bei mir in Intranet. Ist ganz hilfreich und von PHP-Fusion PHP: // Universal page pagination function by CrappoMan function makepagenav ( $start , $count , $total , $range = 0 , $link = "" ){ global $locale ; if ( $link == "" ) $link = "?" ; $res = "" ; $pg_cnt = ceil ( $total / $count ); if ( $pg_cnt > 1 ) { $idx_back = $start - $count ; $idx_next = $start + $count ; $cur_page = ceil (( $start + 1 ) / $count ); $res .= "<table cellspacing='1' cellpadding='1' border='0' class='tbl-border'>\n<tr>\n" ; if ( $idx_back >= 0 ) { if ( $cur_page > ( $range + 1 )) $res .= "<td class='tbl2'><a class='small' href=' $link " . "rowstart=0'><<</a></td>\n" ; $res .= "<td class='tbl2'><a class='small' href=' $link " . "rowstart= $idx_back '><</a></td>\n" ; } $idx_fst = max ( $cur_page - $range , 1 ); $idx_lst = min ( $cur_page + $range , $pg_cnt ); if ( $range == 0 ) { $idx_fst = 1 ; $idx_lst = $pg_cnt ; } for( $i = $idx_fst ; $i <= $idx_lst ; $i ++) { $offset_page =( $i - 1 ) * $count ; if ( $i == $cur_page ) { $res .= "<td class='tbl1'><span class='small'><b> $i </b></span></td>\n" ; } else { $res .= "<td class='tbl1'><a class='small' href=' $link " . "rowstart= $offset_page '> $i </a></td>\n" ; } } if ( $idx_next < $total ) { $res .= "<td class='tbl2'><a class='small' href=' $link " . "rowstart= $idx_next '>></a></td>\n" ; if ( $cur_page < ( $pg_cnt - $range )) $res .= "<td class='tbl2'><a class='small' href=' $link " . "rowstart=" .( $pg_cnt - 1 )* $count . "'>>></a></td>\n" ; } $res .= "</tr>\n</table>\n" ; } return $res ; } + Multi-Zitat Zitieren
#4 26. Februar 2008 AW: Seitenzahl Abkürzung? Etwas fern von der Topic aber: Du liest alle Zeilen der Tabelle aus, nutzt aber nur 10 oder 20. zum Zählen benutz lieber SELECT COUNT(*) as checkcount FROM tabelle und das Auslesen der Einträge, die du brauchst schränkst du mit LIMIT ein. Das ist bei einer großen DB performancetechnisch um einiges klüger. + Multi-Zitat Zitieren