Blätterfunktion in PHP
Author: Admin (447 Wörter in diesem Text) (64789 mal gelesen)
Für alle die es nicht wissen, eine Blätterfunktion ist dafür bestimmt, lange Ergebnislisten auf mehrere Seiten zu verteilen und für jede Seite einen Link zu erzeugen.
Zurück 1 2 3 4 5 vor
PHP-CODE:
<?php
@mysql_connect($localhost, $user, $password) or die("ERROR--CAN'T CONNECT TO SERVER");
@mysql_select_db("database") or die("ERROR--CAN'T CONNECT TO DB");
$limit = 25;
// Anzahl der Einträge die pro Seite gezeigt werden
$query_count = "SELECT count(*) FROM table";
// Query mit der Auswahl der Felder. count(*) ist besser bei großen Datenbanken
$result_count = mysql_query($query_count);
$totalrows = mysql_num_rows($result_count);
// Die Anzehl der Ergebnisse holen
if(empty($page)){ // Überprüfen ob $page gesetzt ist
$page = 1; // Wenn nicht $page ist 1 (Seite 1)
}
$limitvalue = $page * $limit - ($limit);
// Ex: (2 * 25) - 25 = 25 <- daten starten bei 25
$query = "SELECT * FROM table LIMIT $limitvalue, $limit";
$result = mysql_query($query) or die("Error: " . mysql_error());
if(mysql_num_rows($result) == 0){
echo("keine Daten zum Anzeigen!");
}
$bgcolor = "#E0E0E0"; // light gray
echo("<table>");
while($row = mysql_fetch_array($result)){
if($bgcolor == "#E0E0E0"){
$bgcolor = "#FFFFFF";
}else{
$bgcolor = "#E0E0E0";
}
echo("<tr bgcolor=".$bgcolor.">n<td>");
echo($row["users"]);
echo("</td>n<td>");
echo($row["usersID"]);
echo("</td>n</tr>");
echo("</table>");
if($page != 1){
$pageprev = $page--;
echo("<a href=\"$PHP_SELF&page=$pageprev\">Zurück".$limit."</a> ");
}else
echo("Zurück".$limit." "); //wenn wir uns auf Seite 1 befinden ist dies kein Link
$numofpages = $totalrows / $limit;
/* Wir teilen alle Einträge durch $Limit (25) */
for($i = 1; $i <= $numofpages; $i++){
if($i == $page){
echo($i." ");
}else{
echo("<a href=\"$PHP_SELF&page=$i\">$i</a> ");
}
}
if(($totalrows % $limit) != 0){
if($i == $page){
echo($i." ");
}else{
echo("<a href=\"$PHP_SELF&page=$i\">$i</a> ");
}
}
if(($totalrows - ($limit * $page)) > 0){
$pagenext = $page++;
echo("<a href=\"$PHP_SELF?page=$pagenext\">Vor".$limit."</a>");
}else{
echo("NEXT".$limit); //Ist die Aktuelle Seite die letzte gibt es keinen Vor Link.
}
mysql_free_result($result);
?>
Zurück
|