Gå til innhold

Jeg vil bare vise 20 rader fra databasen om gangen


Anbefalte innlegg

Skrevet

Jeg holder på å lage en nyhets side. Jeg vil bare vise 20 nyheter av gangen.

Under tabelen som viser nyheterene skal det være en sådan : side 1 2 3 4 5 osv., samme som det er i dette forum.

Hvordan er det mulig å få til !!

Håper på et grundig svar, da jeg ikke er så stødig i PHP.

 

ps Bruker MySQL

Videoannonse
Annonse
Skrevet (endret)

$antallposts=mysql_num_rows(mysql_query("SELECT * FROM nyheter"));
$temp = $antallposts / 20;
$antallsider = (int) $temp;

if (isset($_GET['page']) && is_numeric($_GET['page'])) {
 $startpage=20*$_GET['page'];
}
if (empty($_GET['page']) || !is_numeric($_GET['page'])) {
 $startpage='0';
}	
if (isset($_GET['page']) && $_GET['page']=='last') {
 if ($antallsider==0) {
 	$startpage='0';
 }
 else {
 	$startpage=20*$antallsider;
 }

}
$sql="SELECT * FROM nyheter ORDER BY id LIMIT ".$startpage.", 20";

 

Det tekniske som henter 20 rader om gangen.

 

  $i = 0;
 while ($i <= $antallsider){
    $j=$i+1;
    echo '<a href=nyheter.php?&page='.$i.'>';
    if (isset($_GET['page']) && $_GET['page']==$i  && is_numeric($_GET['page'])) {
     	echo '<b><u>'.$j.'</u></b>';
    }
    else {
     	echo $j;
    }
    echo '</a>';
    if ($i==$antallsider) {}
    else {
     	echo '--';
    }
    $i++;
 }

 

Viser side 1 2 3 4 5

 

EDIT1: Manglet litt i starten

EDIT2: Noen tall var feil, orginal scriptet er for 10 om gangen

Endret av zokra
Skrevet

Takk, jeg skal jeg prøve meg på dette.

 

Når jeg skal hente data ut fra tabelen, er der row, jeg skal bruke, eller kan man hente ut data ved bruk av feltnavn ?

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...