Paginanummering

Door The Beeding Clown, 18 jaar geleden, 4.653x bekeken

Omdat het andere pagina nummers script niet helemaal naar behoren scheen te werken heb ik er even een gemaakt die wel werkt.

Deze manier gebruik ik zelf altijd op mijn sites en werkt prima voor mij.

Ik heb er gelijk maar even een voorbeeld page van gemaakt zodat jullie um ook kunnen testen.

Belangrijk in deze pagina is de query op het moment dat je dingen uit de database gaat trekken. De LIMIT in de query bepaald wat er op de page gezien moet laten worden.

Enjoy
Grtz NaNo

Gesponsorde koppelingen

PHP script bestanden

  1. paginanummering

 

Er zijn 27 reacties op 'Paginanummering'

PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Jorik
Jorik
18 jaar geleden
 
0 +1 -0 -1
Tikfoutje:
dorpdown in title moet zijn dropdown :)..

Ziet er voor de rest netjes uit, en het voorbeeld werkt ook goed :)..
Ro-G :o)
Ro-G :o)
18 jaar geleden
 
0 +1 -0 -1
Aaaarrcchhh! Hier kom je nu pas mee af?! ;oD
Ben er zelf al even mee bezig geweest en het aan de kant geschoven.
Vreemd toch als je een ander zijn code leest dat het dan allemaal zo vanzelfsprekend lijkt hé.
Zegt veel over mijn, ahum, php talent.
Voila, thnx, ga het straks eens in mijn site integreren. :o)
The Beeding Clown
The Beeding Clown
18 jaar geleden
 
0 +1 -0 -1
haha, idd heb ik ook altijd, enjoy :)


18 jaar geleden
 
0 +1 -0 -1
aa
Rikjan
Rikjan
18 jaar geleden
 
0 +1 -0 -1
Ja, echt geweldig

beetje laat na het posten van dit script, maar het is precies wat ik nodig heb en het werkt perfect
The Beeding Clown
The Beeding Clown
18 jaar geleden
 
0 +1 -0 -1
tnx, enjoy :D
Velixr
velixr
18 jaar geleden
 
0 +1 -0 -1
Yo Nano dat werkt perfect.
Heb alleen wel een vraag...
Stel dat je heel veel records hebt. Dan worden welke aantallen per pagina je krijgt te zien erg veel pagina's. Dus dan krijg je dus:
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 1 | 2 | 3 | 4 | 5 | 1 | 2 | 3 | 4 | 5 | 1 | 2 | 3 | 4 | 5 | 1 | 2 | 3 | 4 | 5 | 1 | 2 | 3 | 4 | 5 | 1 | 2 | 3 | 4 | 5 | 1 | 2 | 3 | 4 | 5 | 1 | 2 | 3 | 4 | 5 | 1 | 2 | 3 | 4 | 5 | 1 | 2 | 3 | 4 | 5 | 1 | 2 | 3 | 4 | 5 | 1 | 2 | 3 | 4 | 5 | 1 | 2 | 3 | 4 | 5 | 1 | 2 | 3 | 4 | 5 | 1 | 2 | 3 | 4 | 5 | 1 | 2 | 3 | 4 | 5 | 1 | 2 | 3 | 4 | 5 | 1 | 2 | 3 | 4 | 5 |
snap je..
Dat wordt dan natuurlijk ook niet overzichtelijk. HEt zou dus mooi zijn wanneer er dan bijvoorbeeld na 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
een ... of > of >> iets dergelijks komt. Klik je daarop dan komt
11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | >> | <<

Maar ja de vraag is natuurlijk HOE doe je zoiets inbouwen..?
DaeDaluz
DaeDaluz
18 jaar geleden
 
0 +1 -0 -1
dan kan je ook doen
1 | 2 | 3 | 4 | 5 | 6 | Last
en dan een aantal pagina's verder
first | 12 | 13 | 14 | 15 | 16 | last

staat ook altijd wel mooi :)
Velixr
velixr
18 jaar geleden
 
0 +1 -0 -1
precies, idd misschien wel mooier! Maar vraag is hoe bouw je zo'n functie in?
The Beeding Clown
The Beeding Clown
18 jaar geleden
 
0 +1 -0 -1
Ik heb pasgeleden nog iets in elkaar gezet dat dat probleem oploste.. ik heb het alleen nog niet in dit script gezet. Het princiepe werkt goed.. Je moet zelf maar even kijken hoe je dat in het script kan toepassen.

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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
<?php

$page
= isset($_GET['page']) ? $_GET['page'] : 1;
$totalPages = 666;
$PAGE_LIMIT = 20;

echo 'Your viewing: Page '.$page.'&nbsp;&nbsp;<i><small>(total pages: '.$totalPages.')</small></i><br><br>';

function
show_pagenumbers($start, $end, $page, $totalPages, $PAGE_LIMIT) {
    $str = '';
    for ($i = $start; $i <= $end; $i++) {  
        if ($page == $i) {  
            $str .= '&nbsp;<b>[ '.$i.' ]</b>&nbsp;';  
        }

        else{  
            $str .= '&nbsp;<a href="'.$_SERVER['PHP_SELF'].'?page='.$i.'&amp;perpage='.$PAGE_LIMIT.'" title="Go to page '.$i.'">'.$i.'</a>&nbsp;';  
        }  
    }

    return $str;  
}


if ($totalPages >= 1) {  
    if($totalPages > 7) {
        $start = $page - 3;
        $end = $page + 3;
    
        while($start < 1) {
            $start++;
            $end++;
        }

        while($end > $totalPages) {
            $start--;
            $end--;
        }

        echo ( $page == 1 ) ? '<span style="color:#ccc;">&laquo; Eerste</span>&nbsp;&nbsp;' : '<a href="'.$_SERVER['PHP_SELF'].'?page=1" title="Go to page 1">&laquo; Eerste</a>&nbsp;&nbsp;';
        echo ( $page > 4 ) ? '...' : '';  

        echo show_pagenumbers($start, $end, $page, $totalPages, $PAGE_LIMIT);

        echo ( $page < $totalPages - 3 ) ? '...&nbsp;&nbsp;' : '&nbsp;&nbsp;';
        echo ( $page == $totalPages ) ? '&nbsp;&nbsp;<span style="color:#ccc;">Laatste &raquo;</span>&nbsp;&nbsp;' : '&nbsp;&nbsp;<a href="'.$_SERVER['PHP_SELF'].'?page='.$totalPages.'" title="Go to page '.$totalPages.'">Laatste &raquo;</a>';
    }

    else {
        echo show_pagenumbers(1, $totalPages, $page, $totalPages, $PAGE_LIMIT);
    }
}

else {
    echo 'no page numbers yet';
}

?>


PS: Ik zal als ik tijd heb eens kijken of ik dit in het bestaande script in kan bouwen


17 jaar geleden
 
0 +1 -0 -1
@nano

Vet script..


17 jaar geleden
 
0 +1 -0 -1
erg mooi, ik ga het gebruiken!


17 jaar geleden
 
0 +1 -0 -1
erg mooi, ik ga het gebruiken!
Dirk B
Dirk B
17 jaar geleden
 
0 +1 -0 -1
Dit zocht ik al even !!
Het is wel wat ik zoek, maar dit is gemaakt met mysql, maar ik werk gewoon met MS Access.
Welke codes moet je in wat veranderen?


17 jaar geleden
 
0 +1 -0 -1
Wat houd dit in? Ik kan niet javascripten :( :

<SCRIPT type="text/javascript" language="JavaScript">
<!--
function openURI() {
var control = document.form.documentkeuze;
if (control.options[control.selectedIndex].value != ' ') {
location.href = control.options[control.selectedIndex].value;
}
}
-->
</SCRIPT>


17 jaar geleden
 
0 +1 -0 -1
Owjah ik krijg ook nog een foutmelding:


Warning: mysql_connect(): Access denied for user: 'Steven@localhost' (Using password: YES) in d:\server\on server\untitled-2.php on line 14
Jelmer -
Jelmer -
17 jaar geleden
 
0 +1 -0 -1
@Steven bericht 1:
Dat script zorgt ervoor dat je doorverwezen wordt naar een bepaalde pagina zodra je in de select (uitklapmenutje) een andere optie hebt gekozen
@Steven bericht 2:
Volgens een of andere vertaalwebsite staat er: Het waarschuwen: mysql_connect (): Toegang die voor gebruiker wordt ontkend: ' Steven@localhost ' (Gebruikend wachtwoord: JA) in d:\server\on server\untitled-2.php op lijn 14 Kortom: je gebruikersnaam en/of wachtwoord klopt niet.
Dirk
Dirk
16 jaar geleden
 
0 +1 -0 -1
Hoe kan ik dat script combineren met deze while?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
$sql
= "SELECT * FROM pagina1";
 $resultaat = mysql_query($sql);
 while ($record = mysql_fetch_object($resultaat)){
     echo  $record->beschrijving."<br>";
    }
    ?


bedankt!
The Beeding Clown
The Beeding Clown
16 jaar geleden
 
0 +1 -0 -1
Je moet met de LIMIT gaan werken dat is het iedee achter heel het script

#--> uit de database trekken en echo-en
$sql = "SELECT * FROM `".$mysql_table."` ORDER BY `id` DESC LIMIT ".$offset.",".$messagePerPage;
Lissy Pixel
Lissy Pixel
16 jaar geleden
 
0 +1 -0 -1
Beste pap,
Haal voor alle veiligheid voor jezelf even je inlognaam en wachtwoorden weg. Helaas ben ik geen mod anders had ik dit ter plekke voor je gedaan!!!
Pap
pap
16 jaar geleden
 
0 +1 -0 -1
hoi lissy dank je wel voor de tip,
inmiddels heb ik het probleem al opgelost,
Dhr. Zwartjes
Dhr. Zwartjes
16 jaar geleden
 
0 +1 -0 -1
Hoe krijg ik het script aan het werk met deze database???
DROP TABLE IF EXISTS `links`;
CREATE TABLE IF NOT EXISTS `links` (
`linkscode` smallint(5) unsigned NOT NULL auto_increment,
`url` varchar(250) default NULL,
`websitename` varchar(250) default NULL,
`description` text,
`banner` varchar(250) default NULL,
`linkin` varchar(4) default NULL,
`linkout` varchar(4) default NULL,
PRIMARY KEY (`linkscode`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=74 ;
Reza
reza
16 jaar geleden
 
0 +1 -0 -1
erg mooi, ik ga het gebruiken!
Hoe kan ik dat script combineren met deze while?
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
<?php
include("inc_connect.php");
$query = mysql_query("SELECT * FROM movie ORDER BY ean") or die(mysql_error());

//de teller op 0 zetten
$i = 0;

while($rij = mysql_fetch_assoc($query))
{

    $photo='../images/' .  $rij["ean"] . ".jpg";
    echo'<img src="' . $photo .'"><br>';
    
    //de teller heb je nodig.
  
    echo ' <a href="book.php?ean=' . $rij["ean"] .  '" title="' . $rij["naam"] .'">Meer&nbsp;informatie</a><hr>';
    echo "</p></tr>\n";
     $i++;
}

?>
Irian Vis
Irian Vis
15 jaar geleden
 
0 +1 -0 -1
ik krijg steeds de volgende error, maar ik snap niet wat het probleem is...:
Notice: Undefined index: message in /usr/home/djstarfi/public_html/test/test.php on line 124
Irian Vis
Irian Vis
15 jaar geleden
 
0 +1 -0 -1
bedankt, het werkt inmiddels, en echt geweldig!
Mark Dijkstra
mark Dijkstra
15 jaar geleden
 
0 +1 -0 -1
@nano ,

he top stukje code :d moet ik zeggen (eindelijk eentje die werkt ;) )

maar ik krijg iets raar wat betreft de layout als ik de laaste pagina aan klik verspringt de layout iets naar rechts weet niet of het in mijn eigencode zit of in de jouwne?

Enig idee?


greetz
PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
The Beeding Clown
The Beeding Clown
15 jaar geleden
 
0 +1 -0 -1
Hoi mark,

Tnx voor je compliment...

Ik weet niet of het alleen aan jou script ligt... het is wel zo dat als je van pagina 1 naar 10 gaat ie iets breeder word omdat je dan pagina nummers hebt die uit 2 cijfers bestaan.

Hier kan je kijken of het in het script zit of alleen bij jou... daar heb ik dit script ook in zitten.

Grtz nano

Om te reageren heb je een account nodig en je moet ingelogd zijn.

Inhoudsopgave

  1. paginanummering

Labels

  • Geen tags toegevoegd.

Navigatie

 
 

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.