Postet av: Svend Andreas Horgen Re: Tips til nyhetsløsningen
>Tenkte f.eks 30 nyheter på hver side ( arkivet kan bli veldig stort etterhvert), og at en ny side opprettes hver gang en side er "full", helst med en "neste" og "forrige" link.
For å gjøre dette, anbefaler jeg at du lagrer alle nyheter i databasen uten noe mer om eller men. Det er i visningen av nyheter at du vil ha 30 og 30-begrensningen.
Dermed må du hente ut 30 nyheter i arkiv-visningen, og vise disse. Jeg antar heretter at siden din heter "vis_nyheter.php".
Sorter etter id (for eksempel). Når de 30 er skrevet ut, må du skrive ut en Neste-lenke. Denne må se slik ut (bruker [ i stedet for < for å starte tag nå.
[a href="vis_nyheter.php?side=2]Neste[/a]
for eksempel. Her overføres tallet 2 til siden. Legg merke til at du lenker til nøyaktig samme side som den du er på (vis_nyheter.php). Eneste forskjell er at nå sender du med argumentet side=2.
Dette kan du bruke for å vite at du nå skal hente ut ikke de 30 første, men nyheter fra og med 30 til og med 60.
Skriv ut en ny Neste-lenke med side=3, og du vet da at det er fra 60 til 90 du skal vise fram.
En mulig formel er:
$start = ($_GET['side] - 1) * 30;
$slutt = $_GET['side'] * 30;
$sql = "SELECT * FROM tabell LIMIT $start, $slutt";
$resultat = mysql_query(bla bla);
while {bla bla bla... gå gjennom resultatsettet her...
}
Elegant så vidt jeg kan se på en søndag kveld, men jeg har IKKE testet dette. Håper prinsippet kommer klart fram og at du kommer på sporet av noget.
Hvis ikke, så hør gjerne på no.it.programmering.php
For en innføring i news, så sjekk ut:
http://aitel.hist.no/~svendah/veiledere/news_intro.php
| |