Navigatie met GET resultaten..
Ik heb een navigatie voor aantal pagina's en me website bestaat alleen uit zoekopdrachten..
Maar de navigatie kijkt hoeveel id's zijn geheel in de database..
Dus wanneer ik een zoekopdracht doe dan zie ik altijd aantal pagina's terwel er maar 1 resultaat is..
Ik werk met GET functie en heb van alles geprobeerd.. ik krijg gewoon niet het idee hoe ik dat het beste kan oplossen..
Quote:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
$res1 = mysql_query("SELECT COUNT(id) FROM leden") or die("res1: ".mysql_error()); // vraag het AANTAL items op
$items_totaal = mysql_result($res1, 0); // het totaal aantal items
mysql_free_result($res1); // geef het resultaat vrij
$items_per_pagina = 5; // vrij te kiezen
$aantal_paginas = ceil($items_totaal / $items_per_pagina); // het aantal items per pagina
// de huidige pagina opvragen
$huidige_pagina = 0; // default
if(isset($_GET['p']) && is_numeric($_GET['p']) && $_GET['p'] > 0 && $_GET['p'] < $aantal_paginas) {
$huidige_pagina = $_GET['p'];
}
// items van de huidige pagina ophalen
$offset = $huidige_pagina * $items_per_pagina; ?>
$res1 = mysql_query("SELECT COUNT(id) FROM leden") or die("res1: ".mysql_error()); // vraag het AANTAL items op
$items_totaal = mysql_result($res1, 0); // het totaal aantal items
mysql_free_result($res1); // geef het resultaat vrij
$items_per_pagina = 5; // vrij te kiezen
$aantal_paginas = ceil($items_totaal / $items_per_pagina); // het aantal items per pagina
// de huidige pagina opvragen
$huidige_pagina = 0; // default
if(isset($_GET['p']) && is_numeric($_GET['p']) && $_GET['p'] > 0 && $_GET['p'] < $aantal_paginas) {
$huidige_pagina = $_GET['p'];
}
// items van de huidige pagina ophalen
$offset = $huidige_pagina * $items_per_pagina; ?>
Quote:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php echo "<div class=\"rl\">Pagina ".($huidige_pagina+1)." van ".$aantal_paginas."</div>";
// navigatie
for($i = 0; $i < $aantal_paginas; $i++) {
if($huidige_pagina == $i) {
// huidige pagina is niet klikbaar
echo "<div class=\"select\">".($i+1)."</div>";
} else {
if (isset($_GET['categorie']) && isset($_GET['provincie'])) {
echo "<div class=\"cijfer\"><a href=\"".$_SERVER['PHP_SELF']."?categorie=".mysql_real_escape_string($_GET['categorie'])."&provincie=".mysql_real_escape_string($_GET['provincie'])."&p=".$i."\">".($i+1)."</a></div>";
// een andere pagina dan de huidige is wel klikbaar
}elseif($_GET['provincie']) {
echo "<div class=\"cijfer\"><a href=\"".$_SERVER['PHP_SELF']."?provincie=".mysql_real_escape_string($_GET['provincie'])."&p=".$i."\">".($i+1)."</a></div>";
}elseif ($_GET['categorie']) {
echo "<div class=\"cijfer\"><a href=\"".$_SERVER['PHP_SELF']."?categorie=".mysql_real_escape_string($_GET['categorie'])."&p=".$i."\">".($i+1)."</a></div>";
}else{
echo "<div class=\"cijfer\"><a href=\"".$_SERVER['PHP_SELF']."?p=".$i."\">".($i+1)."</a></div>";
}
}
} ?>
// navigatie
for($i = 0; $i < $aantal_paginas; $i++) {
if($huidige_pagina == $i) {
// huidige pagina is niet klikbaar
echo "<div class=\"select\">".($i+1)."</div>";
} else {
if (isset($_GET['categorie']) && isset($_GET['provincie'])) {
echo "<div class=\"cijfer\"><a href=\"".$_SERVER['PHP_SELF']."?categorie=".mysql_real_escape_string($_GET['categorie'])."&provincie=".mysql_real_escape_string($_GET['provincie'])."&p=".$i."\">".($i+1)."</a></div>";
// een andere pagina dan de huidige is wel klikbaar
}elseif($_GET['provincie']) {
echo "<div class=\"cijfer\"><a href=\"".$_SERVER['PHP_SELF']."?provincie=".mysql_real_escape_string($_GET['provincie'])."&p=".$i."\">".($i+1)."</a></div>";
}elseif ($_GET['categorie']) {
echo "<div class=\"cijfer\"><a href=\"".$_SERVER['PHP_SELF']."?categorie=".mysql_real_escape_string($_GET['categorie'])."&p=".$i."\">".($i+1)."</a></div>";
}else{
echo "<div class=\"cijfer\"><a href=\"".$_SERVER['PHP_SELF']."?p=".$i."\">".($i+1)."</a></div>";
}
}
} ?>
ik heb zelf dit geprobeerd maar krijg dan maar 1 pagina te zien.. bij resultaat van 20
Quote:
Code (php)
1
<?php $res1 = mysql_query("SELECT COUNT(id) FROM leden WHERE provincie = '".mysql_real_escape_string($_GET['provincie'])."' AND categorie = '".mysql_real_escape_string($_GET['categorie'])."'") or die("res1: ".mysql_error()); ?>
Kunnen jullie mij AUB helpen
ps: voor de mensen die de hele script willen zien.. http://pastebin.com/rEEtmGR0
MvG,
MrRed0uaN
Gewijzigd op 30/12/2010 17:07:39 door Redouan Hajjari
Ik heb youtube gebruikt voor mijn navigatie script
Gewijzigd op 30/12/2010 17:10:19 door Jasper DS
PHP Jasper op 30/12/2010 17:08:26:[.code] [./code] tags zonder punt
Thanks had het al gewijzigd..
Toevoeging op 30/12/2010 17:17:08:
PHP Jasper op 30/12/2010 17:08:26:
de navigatie weet ik hoe het werkt maar omdat ik zoekopdrachten heb..
krijg ik dus altijd 3 pagina's tezien terwel er maar 1 resultaat is..