Hi !
Ich habe ein kleines Problem mit dem Paging der Datensätze.
Folgenden Code habe ich im Net gefunden bei mir eingebaut und soweit funtioniert es auch fast das Script:
<?php
$host = "localhost"; // MySQL - Zielrechner.
$user = "root"; // Dein Userlogin.
$password = ""; // Dein Datenbankpasswort.
$database = "test"; // Datenbank
$table = "test_tabelle"; // Der Name der Datenbanktabelle
// Datendefinition für die Clientausgabe
$start = (isset($start)) ? abs((int)$start) : 0;
$limit = 10; // Datensätze pro Ausgabeseite
// Verbindung zu MySQL-Datenbank herstellen oder sterben.
@mysql_connect($host,$user,$password)
or die("Abbruch: Verbindung zu '$host'"
." konnte nicht hergestellt werden.");
// Benötigte Datenbank auswählen oder sterben.
@mysql_select_db($database)
or die("Abbruch: Datenbank '$database' konnte nicht"
." selektiert werden.<br><br>MySQL sagt: ".mysql_error());
// Feststellen der Anzahl der verfügbaren Datensätze.
$resultID = @mysql_query("SELECT COUNT(name) FROM ".$table);
$total = @mysql_result($resultID,0);
// Ggf. $start korrigieren (falls Parameter in
// der URL manipuliert wurde)
$start = ($start >= $total) ? $total - $limit : $start;
// Datenbankabfrage ausführen.
$query = "SELECT name,ort FROM ".$table
." LIMIT ".$start.",".$limit;
$resultID = @mysql_query($query);
// Ergebnisse lesen und an den Client ausgeben
while ($data = mysql_fetch_array($resultID))
{
echo $data["name"].": ".$data["ort"]."<br>";
}
// Zurück- und Vorblättern
if ($start > 0)
{
$newStart = ($start - $limit < 0) ? 0 : ($start-$limit);
echo "<a href=".$_SERVER['PHP_SELF']."?start=".$newStart
."><< zurück</a>";
}
if ($start + $limit < $total)
{
$newStart = $start + $limit;
echo " <a href=".$_SERVER['PHP_SELF']."?start=".$newStart
.">vor >></a>";
}
echo "Start:".$start;
echo "New:".$newStart;
?>
Allerdings wenn ich auf den Link klicke dann wird die $start nicht erhöht.(glaube ich zumindest)
Kennt jemand denn Fehler im script oder hat einen denkansatz ?
Danke !!!
Ich habe ein kleines Problem mit dem Paging der Datensätze.
Folgenden Code habe ich im Net gefunden bei mir eingebaut und soweit funtioniert es auch fast das Script:
<?php
$host = "localhost"; // MySQL - Zielrechner.
$user = "root"; // Dein Userlogin.
$password = ""; // Dein Datenbankpasswort.
$database = "test"; // Datenbank
$table = "test_tabelle"; // Der Name der Datenbanktabelle
// Datendefinition für die Clientausgabe
$start = (isset($start)) ? abs((int)$start) : 0;
$limit = 10; // Datensätze pro Ausgabeseite
// Verbindung zu MySQL-Datenbank herstellen oder sterben.
@mysql_connect($host,$user,$password)
or die("Abbruch: Verbindung zu '$host'"
." konnte nicht hergestellt werden.");
// Benötigte Datenbank auswählen oder sterben.
@mysql_select_db($database)
or die("Abbruch: Datenbank '$database' konnte nicht"
." selektiert werden.<br><br>MySQL sagt: ".mysql_error());
// Feststellen der Anzahl der verfügbaren Datensätze.
$resultID = @mysql_query("SELECT COUNT(name) FROM ".$table);
$total = @mysql_result($resultID,0);
// Ggf. $start korrigieren (falls Parameter in
// der URL manipuliert wurde)
$start = ($start >= $total) ? $total - $limit : $start;
// Datenbankabfrage ausführen.
$query = "SELECT name,ort FROM ".$table
." LIMIT ".$start.",".$limit;
$resultID = @mysql_query($query);
// Ergebnisse lesen und an den Client ausgeben
while ($data = mysql_fetch_array($resultID))
{
echo $data["name"].": ".$data["ort"]."<br>";
}
// Zurück- und Vorblättern
if ($start > 0)
{
$newStart = ($start - $limit < 0) ? 0 : ($start-$limit);
echo "<a href=".$_SERVER['PHP_SELF']."?start=".$newStart
."><< zurück</a>";
}
if ($start + $limit < $total)
{
$newStart = $start + $limit;
echo " <a href=".$_SERVER['PHP_SELF']."?start=".$newStart
.">vor >></a>";
}
echo "Start:".$start;
echo "New:".$newStart;
?>
Allerdings wenn ich auf den Link klicke dann wird die $start nicht erhöht.(glaube ich zumindest)
Kennt jemand denn Fehler im script oder hat einen denkansatz ?
Danke !!!
Kommentar