Paginanummering

Door Daniel H, 18 jaar geleden, 8.195x bekeken

Veel mensen vroegen allemaal script voor het nummeren van pagina's. Vandaar deze script. het is niet allemaal van mij, maar weet de bron niet meer.

To do:
de variabele aanpassen in de script.

Voorbeeld: http://phphulp.cdwi.nl/paginanummering.php

Gesponsorde koppelingen

PHP script bestanden

  1. paginanummering

 

Er zijn 17 reacties op 'Paginanummering'

PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Mr.Ark
Mr.Ark
18 jaar geleden
 
0 +1 -0 -1
Wil je A.U.B de volgende dingen even aanpassen:

[x] Variables buiten quotes
[x] Gebruik single quotes, dan hoef je niet alles te escapen

Verder ziet de style er mooi uit.

Edit:


Fouten afhandeling mist nog bij de query
Henktrol
henktrol
18 jaar geleden
 
0 +1 -0 -1
damn, deze ziet er wel heel nice uit :) maar waarom in het engels?

en ik zie nog wel wat...

- ik mis de knop voor eerste en laatste pagina
- PHP_SELF is verouderd, gebruik REQUEST_URI
- foutafhandeling
- ik zie ook geen controle of de pagina wel überhaupt werkt...

nouja ik neem 'm mee en ga het voor mezelf iig nog verbeteren :D

super werk!
Marcel K
Marcel K
18 jaar geleden
 
0 +1 -0 -1
uhm Daniel...

ik zie wachtwoordjes staan enzo.... Kan je beter ff weghalen lijkt mij....
Daniel H
Daniel H
18 jaar geleden
 
0 +1 -0 -1
Fuck. bedankt.
Marcel K
Marcel K
18 jaar geleden
 
0 +1 -0 -1
Graag gedaan, volgende keer opletten ;-)
Dick oo
dick oo
18 jaar geleden
 
0 +1 -0 -1
Als je iets post moet je ook zorgen dat het werkt ;)

Ik zie dat $rowsperpage nergens gedefinieerd is..

Daarnaast vervang die dubbele pijltjes even door
«
en
»

Anders kan HTML ze niet verwerken ;)


Heb 't zelf al veranderd, behalve $rowsperpage..

Waarom heb je in godsnaam de helft in het Engels en de helft in het Nederlands?!

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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Paginanummering</title>
<style type="text/css">
body{font-family:Arial, Helvetica, sans-serif; font-size:12px;}
h2{clear:both; border:0; margin:0; padding-top:30px; font-size:13px;}
p{border:0; margin:0; padding:0; padding-bottom:20px;}
</style>
<style type="text/css">
/* -------------------------------------------- */
/*         Pagination: Digg Style                    */
/* -------------------------------------------- */
    ul{border:0; margin:0; padding:0;}

    #pagination-digg li{
        border:0; margin:0; padding:0;
        font-size:11px;
        list-style:none;
    }
    #pagination-digg a{
        border:solid 1px #9aafe5;
        margin-right:2px;
    }
    #pagination-digg .previous-off,
    #pagination-digg .next-off {
        border:solid 1px #DEDEDE;
        color:#888888;
        display:block;
        float:left;
        font-weight:bold;
        margin-right:2px;
        padding:3px 4px;
    }
    #pagination-digg .next a,
    #pagination-digg .previous a {
     font-weight:bold;
    }    
    #pagination-digg .active{
        background:#2e6ab1;
        color:#FFFFFF;
        font-weight:bold;
        display:block;
        float:left;
        padding:4px 6px;
    }
    #pagination-digg a:link,
    #pagination-digg a:visited {
        color:#0e509e;
        display:block;
        float:left;
        padding:3px 6px;
        text-decoration:none;
    }
    #pagination-digg a:hover{
        border:solid 1px #0e509e;
    }
</style>
</head>

<body>
<?php
////////////////////////////////////////////
/// Edit by: Daniël                      ///
/// xfire: tjonger                       ///
////////////////////////////////////////////

$host = "";  // De host van uw server. 99 van de 100 keer is dit localhost.
$user = "";  // De gebruiker van de database. Bij het aanmaken van de database heeft u dit moeten opgeven.
$pass = "";  // Het wachtwoord van de database. Bij het aanmaken van de database heeft u dit moeten opgeven.
$db = "";  // De database. Bij het aanmaken van de database heeft u dit moeten opgeven.
$table = ""; // naam van je mysql table
$max = 1; // aantal items per pagina
///////////////////////////////////////////////////
// Niks aanpassen, als je niet weet wat je doet. //
///////////////////////////////////////////////////

$conn = mysql_connect($host,$user,$pass) or die(mysql_error());
$db = mysql_select_db($db);

// find out how many rows are in the table
$sql = "SELECT COUNT(*) FROM $table";
$result = mysql_query($sql, $conn);
$r = mysql_fetch_row($result);
$numrows = $r[0];

// find out total pages
$totalpages = ceil($numrows / $max);

// get the current page or set a default
if (isset($_GET['currentpage']) && is_numeric($_GET['currentpage'])) {
   // cast var as int
   $currentpage = (int) $_GET['currentpage'];
}
else {
   // default page num
   $currentpage = 1;
}
// end if

// if current page is greater than total pages...

if ($currentpage > $totalpages) {
   // set current page to last page
   $currentpage = $totalpages;
}
// end if
// if current page is less than first page...

if ($currentpage < 1) {
   // set current page to first page
   $currentpage = 1;
}
// end if

// the offset of the list, based on current page

$offset = ($currentpage - 1) * $rowsperpage;

/******  build the pagination links ******/
// range of num links to show

$range = 3;

echo "<ul id=\"pagination-digg\">";
// if not on page 1, don't show back links
if ($currentpage > 1) {
   // get previous page num
   echo " <li class=\"next\"><a href=?currentpage=1'>&#171;&#171; Eerste pagina</a><li> ";
   $prevpage = $currentpage - 1;
   // show < link to go back to 1 page
   echo " <li class=\"next\"><a href=?currentpage=" . $prevpage .">&#171; Vorige</a><li> ";
}
// end if

// loop to show links to range of pages around current page

for ($x = ($currentpage - $range); $x < (($currentpage + $range) + 1); $x++) {
   // if it's a valid page number...
   if (($x > 0) && ($x <= $totalpages)) {
      // if we're on current page...
      if ($x == $currentpage) {
         // 'highlight' it but don't make a link
         echo " <li class=\"active\">". $x . "</li> ";
      // if not current page...
      } else {
         // make it a link
         echo " <li><a href=?currentpage=". $x . ">$x</a><li> ";
      }
// end else
   } // end if
} // end for
                
// if not on last page, show forward and last page links        

if ($currentpage != $totalpages) {
   // get next page
   $nextpage = $currentpage + 1;
    // echo forward link for next page
   echo " <li class=\"next\"><a href=?currentpage=". $nextpage . ">Volgende &#187;</a></li> ";
  
   echo " <li class=\"next\"><a href=?currentpage=". $totalpages . ">Laatste pagina &#187;&#187;</a></li> ";
}
// end if
/****** end build pagination links ******/

echo "</ul>";
?>

</body>
</html>
Thumb nail
Thumb nail
18 jaar geleden
 
0 +1 -0 -1
@Vietnam
eeehm :
http://www.phpfreaks.com/tutorial/basic-pagination daarom mischien denk ik...

@TS
volgende keer eventjes een bronvermelding...
W W
W W
18 jaar geleden
 
0 +1 -0 -1
Anders lees je even.
Toelichting:
Veel mensen vroegen allemaal script voor het nummeren van pagina's. Vandaar deze script. het is niet allemaal van mij, maar weet de bron niet meer
Willem L
Willem L
18 jaar geleden
 
0 +1 -0 -1
Nu nog zoiets als cdcovers.cc. Het alfabet met daaronder nummering? Zie het voorlopig nog nergens staan. Ben nog steeds zoekende.
Dick oo
dick oo
18 jaar geleden
 
0 +1 -0 -1
Nouja TS: als je iets jat, jat 'm dan goed of of jat 'm niet
Joni Fleischer
Joni Fleischer
18 jaar geleden
 
0 +1 -0 -1
@ Vietnam

Jesus, hij probeerd mensen te helpen door wat op te zoeken en te plaatsen.
Laat hem ff gaan jankerd.. Kom jij is met een geweldig script dan?
Dick oo
dick oo
18 jaar geleden
 
0 +1 -0 -1
@Joni,
WAAR?
kap is met zeiken zeg, je hebt zelf GEEN fatsoenlijk script.
wat voor de een een slecht script is is voor de ander een geweldig script. ik ga niet een script maken die alleen aan JOUW wensen voldoet.
Johan vermeire
johan vermeire
18 jaar geleden
 
0 +1 -0 -1
Er is wel één ding dat ik ga veranderen aan dit script het verdwijnen van de knoppen is echt niet mooi, ik zou ze laten staan maar niet als link en in een ander kleurtje ofzo.
Cornel van der Heiden
Cornel van der Heiden
18 jaar geleden
 
0 +1 -0 -1
Ik vind het wel een cool script, maar ik krijg dat probleem met $rowsperpage niet opgelost. :-(
Dick oo
dick oo
18 jaar geleden
 
0 +1 -0 -1
Kan je geen Engels? :P

Zet gewoon boven deze regels:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
// find out total pages
$totalpages = ceil($numrows / $rowsperpage);

het volgende:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
// number of rows to show per page
$rowsperpage = 10;

Het cijfer kan je vervangen door het aantal berichten per pagina dat jij wilt.
Erwin van Brink
Erwin van Brink
17 jaar geleden
 
0 +1 -0 -1
Dit is precies wat ik zocht, en heb het in mijn eigen code geimplementeerd. Ik heb alleen het 'probleem' dat de paginanummering bij '0' begint en niet bij '1'.

Kan iemand mij vertellen waarom dit gebeurt en hoe ik dit kan aanpassen ? Ben er al de hele dag op aan het kijken en zie het niet...

Alvast bedankt !


Hieronder de code :

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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
<?php
// get the current page or set a default
            
$aantal_paginas = $aantal_paginas - 1;
            
if (isset($_GET['currentpage']) && is_numeric($_GET['currentpage'])) {
// cast var as int
$currentpage = (int) $_GET['currentpage'];
            }
else {
               // default page num
               $currentpage = 1;
            }
// end if
            
            // if current page is greater than total pages...

            if ($currentpage > $aantal_paginas) {
               // set current page to last page
               $currentpage = $aantal_paginas;
            }
// end if
            // if current page is less than first page...

            if ($currentpage < 1) {
               // set current page to first page
               $currentpage = 0;
            }
// end if
            
            // the offset of the list, based on current page

            $offset = ($currentpage - 1) * $aantal_per_pagina;
            
            /******  build the pagination links ******/
            // range of num links to show

            $range = 3;

            echo '<ul id=\'pagination-digg\'>';
            // if not on page 1, don't show back links
//            if ($currentpage > 1) {
               // get previous page num

               echo ' <li class=\'next\'><a href=?currentpage=0&items_per_pagina='.$aantal_per_pagina.'>&#171;&#171; </a><li> ';
               $prevpage = $currentpage - 1;
               // show < link to go back to 1 page
               echo ' <li class=\'next\'><a href=?currentpage=' . $prevpage .'&items_per_pagina='.$aantal_per_pagina.'>&#171; </a><li> ';
//            } // end if
            
            // loop to show links to range of pages around current page

            for ($x = ($currentpage - $range); $x < (($currentpage + $range) + 1); $x++) {
               // if it's a valid page number...
               if (($x >= 0) && ($x <= $aantal_paginas)) {
                  // if we're on current page...
                  if ($x == $currentpage) {
                     // 'highlight' it but don't make a link
                     echo ' <li class=\'active\'>'. $x . '</li> ';
                  // if not current page...
                  } else {
                     // make it a link
                     echo ' <li><a href=?currentpage='. $x . '&items_per_pagina='.$aantal_per_pagina.'>$x</a><li> ';
                  }
// end else
               } // end if
            } // end for
                            
            // if not on last page, show forward and last page links        

            if ($currentpage != $aantal_paginas) {
               // get next page
               $nextpage = $currentpage + 1;
                // echo forward link for next page
               echo ' <li class=\'next\'><a href=?currentpage='. $nextpage . '&items_per_pagina='.$aantal_per_pagina.'> &#187;</a></li> ';
              
               echo ' <li class=\'next\'><a href=?currentpage='. $aantal_paginas . '&items_per_pagina='.$aantal_per_pagina.'> &#187;&#187;</a></li> ';
            }
// end if
            /****** end build pagination links ******/

            echo '</ul>';
            ?>
PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Vincent Huisman
Vincent Huisman
17 jaar geleden
 
0 +1 -0 -1
maak aub even een nieuwe thread aan op het forum

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.