PHP Forum

PHP Forum (http://www.selfphp.de/forum/index.php)
-   PHP Entwicklung und Softwaredesign (http://www.selfphp.de/forum/forumdisplay.php?f=14)
-   -   Blätterfunktion als Klasse! (http://www.selfphp.de/forum/showthread.php?t=8031)

Funjoy 25.06.2004 00:45:04

Blätterfunktion als Klasse!
 
Jeder hat schon das Problem gehabt Datensätze auf dynamisch erzeugte Seiten aufzuteilen. Ich habe mal ein Klasse geschrieben die da Abhilfe schickt.

Hier eine Anleitung zur Nutzung meiner Blätterfunktions- Klasse:

Ich habe der Klasse folgenden Namen geben PPclass.php aber Ihr könnt sie nennen wie Ihr wollt ;D

Klasse Downloaden:
PPclass.php

Einbinden der Klasse:
Ich denke an der Klasse ist alles recht eindeutig doch wie benutzt man sie? Die Benuzung ist eigentlich recht leicht zuerst Inkludiert Ihr die Datei.

PHP-Code:

<?php
require("PPclass.php");

...
?>

Dann startet Ihr die Klasse und definiert die Eigenschaften der Variablen das schaut dann so aus.

PHP-Code:

<?php
require("PPclass.php");

$pp = new LoadPP();
$pp->params "var=wert&";
$count mysql_query("SELECT * FROM Table"); 
$pp->NumRow mysql_num_rows($count);
$sites $pp->site_divide();

...
?>

Erläuterung:

$pp = new LoadPP();
Damit starten wir die Klasse!

$pp->params = "var=wert&";
Hier könnt Ihr eventuelle Parameters noch festlegen!

$pp->NumRow = ...;
Da müsst Ihr die anzahl der Datensätze angeben!

$sites = $pp->site_divide();
In der Variable $sites werden die seiten gespeichert!

So nun müssen wir nur noch was an der While schleife bzw. den Query von euch ändern. z.B. Ihr wollt bei einem Gästebuch die Posts ausgeben dazu macht Ihr das ja so:

PHP-Code:

<?php
$query 
mysql_query ("SELECT * FROM dbname ORDER BY id DESC");  
while(
$array mysql_fetch_array($query)) {
...
}
?>

Um nun die Seiten dynamisch aufzuteilen braucht Ihr nur noch am Query ein LIMIT ranhängen so:

PHP-Code:

<?php
$query 
mysql_query ("SELECT * FROM dbname ORDER BY id DESC LIMIT $start,".$pp->ppage."");  
while(
$array mysql_fetch_array($query)) {
...
}
echo 
$sites;
?>

Ihr solltet aufpassen das die Variable $start nicht schon vorher definiert wurde, da $start eine globale var in der Klasse ist! Mit $pp->ppage wird angeben wie viel Datensätze ausgegeben werden sollen. Und ganz am ende steht noch echo $sites; das gibt dann die Seitenzahlen aus.

Das war es auch schon eigentlich recht simpel oder?

hier noch mal das ganze Script:

PHP-Code:

<?php
require("PPclass.php");

$pp = new LoadPP();
$pp->params "var=wert&";
$count mysql_query("SELECT * FROM Table"); 
$pp->NumRow mysql_num_rows($count);
$sites $pp->site_divide();

$query mysql_query ("SELECT * FROM dbname ORDER BY id DESC LIMIT $start,".$pp->ppage."");  
while(
$array mysql_fetch_array($query)) {
...
}
echo 
$sites;
?>


Beispiel Bild

Viel Spass damit
MfG Funjoy


Alle Zeitangaben in WEZ +2. Es ist jetzt 15:36:02 Uhr.

Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.