Hejsan, jag önskar mig tips på hur jag kan förbättra en kod jag skrivit. Koden använder jag för att dela upp resultatet från en databas (exempelvis i en gästbok). Om resultatet är större än vad som visas per "sida" så skrivs länken "Nästa" ut och har man klickat på nästa så visas även länken "Tillbaka". Dessa "stegare" funkar utmärkt men nu är det så att jag vill att aktuell "sida" skall skrivas ut mellan länkarna. Den koden jag har skrivit är endast temporär då den bara håller så länge antalet sidor inte överstiger 5...
Här kommer koden:
<? if ($_GET['list_page'] == "") { $_GET['list_page']=0; } // Listan skall börja på 0 om sidan är "tom" eller 1
$list_page = $_GET['list_page'];
// Hämtar från databasen, börja på $list_page och sluta på $list_max
$result = mysql_query("SELECT * FROM tabel LIMIT $list_page,$list_max") or die(mysql_error());
while ($r = mysql_fetch_array($result))
{
// Resultatet
}
$stegaren = $_GET['list_page'];
// Här kommer navigeringen
?><br>
<? if ($_GET['list_page'] != 0) {
// Tillbaka-länken ?>
<a href="?sidan=info&info=anslagstavla&list_page=<?=$stegaren-$list_max ?>">Tillbaka</a>
<? } // Aktuell sida ?>
Sida: <?
if ($_GET['list_page'] == 0) { echo(1); } elseif ($_GET['list_page'] == $list_max) { echo(2); } elseif ($_GET['list_page'] == 2*$list_max) { echo(3); } elseif ($_GET['list_page'] == 3*$list_max) { echo(4); } elseif ($_GET['list_page'] == 4*$list_max) { echo(5); }
if ((mysql_result($resulten, 0) >= $list_max) && (mysql_result($resulten, 0) > $list_page+$list_max)) {
// Nästa-länken?>
<a href="?sidan=info&info=anslagstavla&list_page=<?=$stegaren+$list_max ?>">Nästa</a>
<? } ?>
Lyckas ni tyda koden? :e
Det är alltså "Aktuell sida"-delen jag behöver hjälp med..