Veel records uit database op meerdere pagina´s weergeven

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pater

Pater

07/11/2005 13:16:00
Quote Anchor link
Hoe kan ik een groot aantal record uit een database op meerdere pagina´s laten weergeven. Zoals bijvoorbeeld in een gastenboek. De berichten worden dan normaal verdeeld in pagina´s van bijvoorbeeld 10 berichten. Ik wil het gaan gebruiken voor een nieuwsarchief. Nu is het nog te overzien, maar het wordt steeds groter.
 
PHP hulp

PHP hulp

07/05/2024 00:49:32
 
Robert Deiman

Robert Deiman

07/11/2005 13:21:00
Quote Anchor link
TIP: kijk eens bij deze topic:
http://www.phphulp.nl/php/scripts/6/446/

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<?php

/* kijken of een positie is meegegeven, anders wordt de 1e pagina getoont */
if(isset($_GET['positie'])==0){
$positie=0;
}
else{
$positie=(int)$_GET['positie'];
}

$aantalperpagina=10;
$SQL_code="SELECT * FROM gastenboek ORDER BY datum DESC LIMIT $positie,$aantalperpagina";
$resultaat=mysql_query($SQL_code);

//Aantal records berekenen
$aantal_rijen=mysql_num_rows(mysql_query("SELECT id FROM gastenboek"));

//Met de volgende opdrachten worden de links gemaakt.
$volgendepagina=$positie+$aantalperpagina;
if($volgendepagina>=$aantal_rijen){
$link_volgende="Volgende >>";
}
else {
$link_next="<a href=naamvanpagina.php?positie=" . $volgendepagina . ">Volgende >></a>";
}

$vorigepagina=$positie-$aantalperpagina;
if($vorigepagina<0){
$link_vorige="<< Vorige";
}
else {
$link_vorige="<a href=naamvanpagina.php?positie=" . $vorigepagina . "><< Vorige</a>";
}


// om de links te maken en weer te geven
[code]<?php echo $link_vorige . "&nbsp;&nbsp; " . $link_volgende ?>

?>


Als je goed naar de uitleg kijkt die ik erbij heb gezet, dan moet je eruit kunnen komen:

Het hele stuk voor de commentaarregel "// om de links te maken en weer te geven"
Moet je zo gebruiken als waar het staat. Verander wel de SQL_code in de query die je zelf wilt gebruiken. (LAAT "LIMIT $positie,$aantalperpagina" wel staan, hierin selecteerd die alleen de records die op een pagina worden weergegeven.

Vervolgens geef je de resultaten weer op je pagina (ff een kort voorbeeld):

<html>
<body>
<table>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
while($dezeweergeven=mysql_fetch_array($resultaat)){
?>


<tr>
<td>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $dezeweergeven['kolomnaam'] ?>
</td>
</tr>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
}

// EN DAN DUS NA DE WHILE LOOP
echo ("$link_vorige . "&nbsp;&nbsp; " . $link_volgende");
?>


Hoop dat het duidelijk genoeg is zo, anders hoor ik het nog wel van je
Gewijzigd op 07/11/2005 13:22:00 door Robert Deiman
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.