// get the pager input values $page = $_GET['page']; $limit = 20; $result = mysql_query("select count(*) as antal from gaestebog"); $total = mysql_result($result, 0, 0);
// work out the pager values $pager = Pager::getPagerData($total, $limit, $page); $offset = $pager->offset; $limit = $pager->limit; $page = $pager->page;
// use pager values to fetch data $query = "select * from gaestebog order by tid limit $offset, $limit"; $result = mysql_query($query);
// use $result here to output page content
// output paging system (could also do it before we output the page content) if ($page == 1) // this is the first page - there is no previous page echo "<<"; else // not the first page, link to the previous page echo "<a href=\"tagwall.php?page=" . ($page - 1) . "\"><<</a>";
if ($page == $pager->numPages) // this is the last page - there is no next page echo ">>"; else // not the last page, link to the next page echo "<a href=\"tagwall.php?page=" . ($page + 1) . "\">>></a>";
# # Når folk kigger på gBogen første gang har de ikke noget $start_nr, så vi giver dem et nul, # så de starter med det nyeste indlæg. # Hvis en skuummel gæst selv prøver at sætte $start_nr kan den ende med at blive under nul, # når man bruger navigationen. Hvis den er under nul laver vi den også om til nul, så # mysql ikke begynder at brokke sig over ugyldigt input #
# # Vi henter to ting ud af MySQL - først og fremmest alle de indlæg vi skal kigge på # men også en hurtig optælling af, hvor mange indlæg der er ialt. Det sidste skal vi # bruge når vi bygger "frem"- og "tilbage"-links. # # Der er ingen grund til at åbne databasen endnu - vi skal først lige have bygget # de to forespørgsler. #
$sql = "select id, navn, epost, overskrift, date_format(tid, '%e/%c %Y kl. %H:%i') as tiden, besked from gaestebog order by tid desc limit $start_nr,
$antal_ad_gangen"; $taeller_sql = "select count(*) as antal from gaestebog";
# # Nu åbner vi databasen, hiver informationerne ud og lukker med det samme igen. # Det er god skik at en forbindelse til database ikke er åben længere end højst nødvendigt. # # Abstraktionerne fra mysql-funktioner.php sørger for alt det grove arbejde og fejlhåndtering - dejligt. #
# # Så går vi igang med at bygge navigationen # Først bruger vi extract til at få $antal ud til behandling. # Vi looper ikke igennem resultatet, da vi ved der kun er een række, # så vi tilgår den direkte ved $optaelling[0]. #
// get the pager input values $page = $_GET['page']; $limit = 20; $result = mysql_query("select count(*) as antal from gaestebog"); $total = mysql_result($result, 0, 0);
// work out the pager values $pager = Pager::getPagerData($total, $limit, $page); $offset = $pager->offset; $limit = $pager->limit; $page = $pager->page;
// use pager values to fetch data $query = "select * from gaestebog order by tid limit $offset, $limit"; $result = mysql_query($query);
// use $result here to output page content
// output paging system (could also do it before we output the page content) if ($page == 1) // this is the first page - there is no previous page echo "Previous"; else // not the first page, link to the previous page echo "<a href=\"tagwall.php?page=" . ($page - 1) . "\">Previous</a>";
if ($page == $pager->numPages) // this is the last page - there is no next page echo "Next"; else // not the last page, link to the next page echo "<a href=\"tagwall.php?page=" . ($page + 1) . "\">Next</a>";
# # Vi brugte addslashes() da vi lagde tingene i databasen så for at få det til # at se læseligt ud, fjerne vi dem igen med stripslashes() #
# # For at vi får linjeskift i HTML også, bruger vi nl2br til at skifte alle \n # ud med <br>
$besked = nl2br($besked);
# # Vi laver et simpelt check: Hvis eposten indeholder et snabel-a, så laver # vi det til en mailto: # # Dette er dog ingen garanti for, at eposten er gyldig. #
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.