Hallo,
Ich weiss, dass das Thema "Blätter-Funktion" schon das eine odere andere Mal bearbeitet wurde, aber ich schaffe die letzte Hürde einfach nicht, wo auch immer sie liegen mag.
Es geht dabei um folgenden Code:
<html>
<head>
[...]
</head>
<body>
<?php
$zeilen = file("CSV_gaestebuch_eintraege.csv");
$gesamt = count($zeilen);
$pro_seite = 10;
$seiten = ceil($gesamt / $pro_seite);
if (!isset($aktuell))
$aktuell = 1;
for ($i = ($gesamt - ($pro_seite * ($aktuell - 1))); $i >= ($gesamt - (($pro_seite * $aktuell) - 1)); $i--)
{
$eintrag = $zeilen[$i - 1];
list($nr,$name,$ueberschrift,$datum,$uhrzeit,$eintrag,$email,$homepage) = explode ("|", $eintrag);
[...] Ausgabe über Tabellen [...]
}
if ($aktuell > 1)
{
$i = $aktuell -1;
echo('<a href="$PHP_SELF?aktuell=$i"><<<</a>');
}
for ($i = 1; $i <= $seiten; $i++)
{
if ($i == $aktuell)
echo('<font class="aktuell">'.$i.'</font> ');
else
echo('<a href="$PHP_SELF?aktuell=$i">'.$i.'</a> ');
}
if ($aktuell < $seiten)
{
$i = $aktuell + 1;
echo('<a href="$PHP_SELF?aktuell=$i">>>></a>');
}
?>
</body>
</html>
[1] Setze ich die Variable $pro_seite genau auf die Anzahl vorhandener Einträge (= Variable $gesamt), dann werden so viele Tabellen angezeigt, wie Einträge vorhanden sind => unsinnig, da die Blätterfunktion dann unnötig ist
[2] Ist die Variable $pro_seite allerdings grösser als die Anzahl vorhandener Einträge (= Variable $gesamt), dann wird die Differenz mit leeren Tabellen aufgefüllt => nicht in Ordnung, muss aber auch stimmen, da die Anzahl der Einträge erst im Laufe der Zeit grösser wird als die Einträge, die pro Seite angezeigt werden sollen
[3] Ist die Variable $pro_seite kleiner als die Anzahl vorhandener Einträge (= Variable $gesamt), dann werden weitere Navigationslinks angezeigt. Nach deren Anklicken wird die entsprechende Seite allerdings nicht gefunden
Ich hoffe, dass Ihr mir weiterhelfen könnt. Sicherlich liegt der Teufel im Detail, aber ich sehe den Wald vor lauter Bäumen nicht mehr.
Vielen Dank im voraus.
Gruss, Enrico
Ich weiss, dass das Thema "Blätter-Funktion" schon das eine odere andere Mal bearbeitet wurde, aber ich schaffe die letzte Hürde einfach nicht, wo auch immer sie liegen mag.
Es geht dabei um folgenden Code:
<html>
<head>
[...]
</head>
<body>
<?php
$zeilen = file("CSV_gaestebuch_eintraege.csv");
$gesamt = count($zeilen);
$pro_seite = 10;
$seiten = ceil($gesamt / $pro_seite);
if (!isset($aktuell))
$aktuell = 1;
for ($i = ($gesamt - ($pro_seite * ($aktuell - 1))); $i >= ($gesamt - (($pro_seite * $aktuell) - 1)); $i--)
{
$eintrag = $zeilen[$i - 1];
list($nr,$name,$ueberschrift,$datum,$uhrzeit,$eintrag,$email,$homepage) = explode ("|", $eintrag);
[...] Ausgabe über Tabellen [...]
}
if ($aktuell > 1)
{
$i = $aktuell -1;
echo('<a href="$PHP_SELF?aktuell=$i"><<<</a>');
}
for ($i = 1; $i <= $seiten; $i++)
{
if ($i == $aktuell)
echo('<font class="aktuell">'.$i.'</font> ');
else
echo('<a href="$PHP_SELF?aktuell=$i">'.$i.'</a> ');
}
if ($aktuell < $seiten)
{
$i = $aktuell + 1;
echo('<a href="$PHP_SELF?aktuell=$i">>>></a>');
}
?>
</body>
</html>
[1] Setze ich die Variable $pro_seite genau auf die Anzahl vorhandener Einträge (= Variable $gesamt), dann werden so viele Tabellen angezeigt, wie Einträge vorhanden sind => unsinnig, da die Blätterfunktion dann unnötig ist
[2] Ist die Variable $pro_seite allerdings grösser als die Anzahl vorhandener Einträge (= Variable $gesamt), dann wird die Differenz mit leeren Tabellen aufgefüllt => nicht in Ordnung, muss aber auch stimmen, da die Anzahl der Einträge erst im Laufe der Zeit grösser wird als die Einträge, die pro Seite angezeigt werden sollen
[3] Ist die Variable $pro_seite kleiner als die Anzahl vorhandener Einträge (= Variable $gesamt), dann werden weitere Navigationslinks angezeigt. Nach deren Anklicken wird die entsprechende Seite allerdings nicht gefunden
Ich hoffe, dass Ihr mir weiterhelfen könnt. Sicherlich liegt der Teufel im Detail, aber ich sehe den Wald vor lauter Bäumen nicht mehr.
Vielen Dank im voraus.
Gruss, Enrico
Kommentar