|
|
|
Scripte ..

|
| Blätterfunktion mit PHP |
Anhand dieses Tutorials möchte ich euch einmal zeigen, wie man mit ein paar einfachen Zeilen PHP Code eine Seitenaufteilung für eine MySQL Abfrage erstellen kann.
| php: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
|
<?php
$host = "localhost"; //mysql host
$user = "root"; //mysql user
$pwdm = "pwd"; //mysql passwort
$db = "database"; //mysql datenbank
$verbindung mysql_connect($host, $user, $pwdm);
mysql_select_db($db, $verbindung);
list($entries) = mysql_fetch_row(mysql_query("SELECT COUNT(*) FROM test")); //Anzahl der Einträge
$pages = 10; //Anzahl der Einträge pro Seite
$count_pages = ceil($entries/$pages); //Anzahl der Seiten
?> |
|
Als erstes müssen wir ein paar Variablen vorweg definieren. Die Variable $entries definiert die Anzahl der Einträge in der MySQL Datenbank. Wie viele Einträge pro Seite angezeigt werden sollen, legen wir in $pages fest. Zum Schluss müssen wir noch errechnen, wie viele Seiten es nun entgültig gibt. Dabei teilen wir die Anzahl der Einträge durch Anzahl der Einträge pro Seite und runden das Ganze mit ceil() auf. Denn 1,4 oder 3,6 Seiten gibt's ja nicht.
| php: |
1:
2:
3:
4:
5:
|
<?php
if (empty($_GET['page'])) {
$_GET['page'] = 1;
}
?> |
|
Falls wir die Seite zum ersten Mal aufrufen und die Startseite (hier 1) nicht angegeben ist, fangen wir das Ganze mit einer if() ab.
| php: |
1:
2:
3:
4:
5:
6:
|
<?php
$ergebnis = mysql_query("SELECT * FROM test LIMIT " . $pages*($_GET['page']-1) . ", " . $pages . "", $verbindung);
while($zeile = mysql_fetch_array($ergebnis)) {
//restlicher PHP Code
}
?> |
|
So sieht dann das MySQL-Query aus. Wie viele Einträge immer angezeigt werden sollen, legen wir mit LIMIT fest. Auch hier ist die Rechnung sehr einfach: Als erstes wird definiert, ab dem wievielten Datensatz ausgebenen werden soll; darauf wieviele Einträge "geholt" werden sollen.
| php: |
1:
2:
3:
4:
5:
6:
|
<?php
if ($_GET['page'] != 1) {
$back = $_GET['page']-1;
echo "<a href=\"seiten.php?page=" . $back . "\">zurück</a>";
}
?> |
|
Um nicht immer die Zahl zu suchen, welche wir als nächstes anklicken müssen, kann man die Navigation auch mit einfachen Zurück- bzw. Vor-Buttons erleichtern. Mit dieser if() überprüfen wir, ob wir uns nicht auf der ersten Seite befinden. Ist dies der Fall, wird der Link "zurück" ausgeben. Mit welcher Seite wir den Button verlinken müssen, ist auch schnell herausgefunden. Einfach die aktuelle Seite ($_GET['page']) minus eins rechnen.
| php: |
1:
2:
3:
4:
5:
|
<?php
for ($i = 1; $i < $count_pages+1; $i++) {
echo " <a href=\"seiten.php?page=" . $i . "\">" . $i . "</a>";
}
?> |
|
Nun kommen wir zum eingentlichen Herzstück des ganzen: Die Navigation. Um die Anzahl der Links zu erstellen, verwenden wir eine for(). Die Variable $count_pages, mit der wir die Anzahl der Seiten berechnet haben, hilft der for()-Schleife, wie viele Links es nun geben muss. Dann geben wir das Ganze aus; als Seitenzahl verwenden wir, wie in der for() festgelegt, die Variable $i.
| php: |
1:
2:
3:
4:
5:
6:
|
<?php
if ($_GET['page'] < $count_pages) {
$forward = $_GET['page']+1;
echo " <a href=\"seiten.php?page=" . $forward . "\">vor</a>";
}
?> |
|
Wie oben bereits erwähnt, gibt's auch einen Vor-Button. Per if() überprüfen wir, ob wir uns noch nicht auf der letzten Seite befinden. Falls nicht, wird ein Vor-Button erstellt. Auch hier eine kleine Rechnung. Aktuelle Seite ($_GET['page']) plus eins.
< Natürlich kann man dieses Prinzip auch auf andere Abfragen beziehen, hier habe ich das aber anhand einer MySQL Abfrage erklärt. Das Prinzip bleibt aber immer dasselbe: Anzahl der Einträge durch Anzahl der Einträge pro Seite und dann noch aufrunden.
bereitgestellt von: Helga | am: 04.02.2005 18:47
|
|
Hier finden Sie eine Menge an Freeware. Diese Freewaretools sind für jeden frei zum download verfügbar. Nähere Informationen zu den Freeware-Tools finden sie direct auf der Downloadseite dieses Freeware-Tools. In den einzelnen Kategorien werden diese Freeware und Sharewares einzeln sortiert aufgelistet.
Nutzen sie auch die Suchoption in der Database, um ihr Freeware-Tool finden zu können.
Für Hilfe und Support zu den Freeware und Sharewares sind wir im Forum gerne breit, Ihnen kostenlose Unterstützung zu bieten.
Brechen Sie den Download nicht ab, da Sie sonst unter Umständen diese Tools nicht ordnungsgemäß öffnen können.
Jeder registrierte User hat auch selber die Möglichkeit, selber bei uns Freewareprogramme in die Datenbank posten zu können. Dazu ist zu beachten, daß dort nur Freeware und Shareware eingetragen werden dürfen.
Viel Spaß beim durchstöbern unserer Freewaredatenbank.
|
|
|