Scripts
Paginanummering v1
Er stonden al wat versie's met paginanummering op het forum, maar die vond ik niet erg duidelijk geschreven, kwam er uiteindelijk op neer dat ze mij niet bevielen :P Vandaar heb ik er zelf maar 1 geschreven. To do: - Inmiddels gedaan: - Dropdownboxje toevoegen in plaats van textveld met 'Per pagina'
paginanummering-v1
[code]
<?php
// MySQL
$dbServer = '';
$dbUser = '';
$dbPassword = '';
$dbDatabase = '';
$dbTabel = '';
mysql_connect($dbServer, $dbUser, $dbPassword) or die("MySQL Error: <br />" . mysql_error());
mysql_select_db($dbDatabase) or die("MySQL Error: (At database)<br />" . mysql_error());
// Ophalen
$rOutput = mysql_query("SELECT COUNT(*) FROM " . $dbTabel . " LIMIT 5000");
$aOutput = mysql_num_rows($rOutput);
if ($aOutput > 0) {
$iCount_totaal = $aOutput;
# Per pagina
// De standaard optie als 1e
$iPerpagina_DDB = array(20,5,10,15,30,50);
if ($_GET['pp'] != "" && $_GET['pp'] != NULL && in_array($_GET['pp'], $iPerpagina_DDB)) {
$iPerpagina = $_GET['pp'];
} else {
$iPerpagina = $iPerpagina_DDB[0];
}
# Aantal pagina's
$iAantal_paginas = ceil($iCount_totaal / $iPerpagina);
# Huidige pagina
if ($_GET['hp'] != "" && $_GET['hp'] != NULL && is_numeric($_GET['hp']) && $_GET['hp'] <= $iAantal_paginas && $_GET['hp'] >= 1) {
$iHuidige_pagina = $_GET['hp'];
} else {
$iHuidige_pagina = 1;
}
# Controleren wat het 1e result van de pagina is
$iFirstresult = $iHuidige_pagina * $iPerpagina - $iPerpagina;
$iLastresult = $iHuidige_pagina * $iPerpagina;
if ($iAantal_paginas > 1) {
$sQuery = "SELECT * FROM " . $dbTabel . " LIMIT " . $iFirstresult . "," . $iPerpagina;
$rOutput = mysql_query($sQuery);
$aOutput = mysql_num_rows($rOutput);
}
} else {
echo '<span style="color: red; font-weight: bold; font-size: 15px;" align="center">General error: No entries</span>';
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="content-type" content="text/html;charset=UTF-8" />
<title>Pagina <?= $iHuidige_pagina ?> - Paginanummering</title>
<style type="text/css">
<!--
* {
margin: 0;
padding: 0;
}
body {
font-family: Verdana;
background-color: #EEEEEE;
padding: 25px 25px 25px 25px;
}
h3 {
font-size: 40px;
font-weight: bold;
}
p {
font-size: 12px;
font-weight: normal;
}
a {
color: #000000;
text-decoration: none;
}
a:hover {
color: #FFFFFF;
text-decoration: underline;
}
td {
overflow: hidden;
}
/* Pagina navigatie CSS */
table.paginanav {
height: 15px;
width: 300px;
background-color: #000000;
color: #FFFFFF;
border: solid #232323 1px;
border-collapse: collapse;
font-size: 10px;
font-weight: normal;
font-family: Verdana;
}
td.prepage {
border: dotted #909090 1px;
border-collapse: collapse;
background-color: #EEEEEE;
color: #000000;
width: 40px;
height: 16px;
margin-top: 2px;
margin-bottom: 2px;
}
td.page {
border: dotted #909090 1px;
border-collapse: collapse;
background-color: #AAAAAA;
color: #000000;
width: 8px;
height: 16px;
margin-top: 2px;
margin-bottom: 2px;
text-align: center;
}
td.pageh {
border: dotted #909090 1px;
border-collapse: collapse;
background-color: #787878;
color: #FFFFFF;
width: 8px;
height: 16px;
margin-top: 2px;
margin-bottom: 2px;
text-align: center;
}
.pagec {
border: dotted #909090 1px;
border-collapse: collapse;
background-color: #EEEEEE;
color: #232323;
width: 8px;
height: 16px;
margin-top: 2px;
margin-bottom: 2px;
text-align: center;
}
td.pagech {
border: dotted #909090 1px;
border-collapse: collapse;
background-color: #787878;
color: #FFFFFF;
width: 8px;
height: 16px;
margin-top: 2px;
margin-bottom: 2px;
text-align: center;
}
.ddb_arrow {
color: #999999;
}
.ddb_perpagina {
color: #999999;
text-decoration: underline;
width: 60px;
}
.ddb_arrow:hover {
color: #999999;
text-decoration: none;
}
#ddb {
width: 185px;
height: 50px;
background-color: #EEEEEE;
border: solid #000000 1px;
border-collapse: collapse;
font-size: 10px;
font-weight: normal;
position: overlay;
left: 0; top: 0; right: 0;
}
#ppb {
width: 185px;
height: 50px;
background-color: #EEEEEE;
border: solid #000000 1px;
border-collapse: collapse;
font-size: 10px;
font-weight: normal;
position: overlay;
left: 0; top: 0; right: 0;
}
-->
</style>
</head>
<body>
<script type="text/javascript">
function changeStatus(i) {
ddb = document.getElementById("ddb");
ppb = document.getElementById("ppb");
if(ddb != null && ppb != null) {
if(i == 1) {
ppb.style.display = "none";
ddb.style.display = "block";
} else if(i == 2) {
ddb.style.display = "none";
ppb.style.display = "block";
} else {
ddb.style.display = "none";
ppb.style.display = "none";
}
}
}
</script>
<?php
echo '<h3>Paginanummering</h3><p><br /><br />';
echo '<b>Aantal results:</b> ' . $iCount_totaal . '<br />';
echo '<b>Per pagina:</b> ' . $iPerpagina . '<br />';
echo '<b>Aantal paginas:</b> ' . $iAantal_paginas . '<br />';
echo '<b>Huidige pagina:</b> ' . $iHuidige_pagina . '<br />';
echo '<br /><br /></p>';
// Nu het outputten zelf
if ($aOutput >= 1) {
echo '<h4><b>Output query:</b></h4>';
echo '<p><br />';
echo '# - Naam<br />';
while ($sOutput = mysql_fetch_object($rOutput)) {
echo $sOutput->id . " - " . $sOutput->naam . "<br />";
}
echo '<br /><br /></p>';
echo '<table border="0">
<tr>
<td style="width: 500px;"></td>
<td style="width: 300px;">
<form method="get" action="index.php">
<div id="ppb" class="pagec" style="display: none;">
<table border="0">
<tr>
<td><b>Results per pagina:</b><img src="http://files.wesdesignz.nl/min.gif" alt="Sluiten" title="Sluiten" onclick="javascript:changeStatus(0); return false;" style="width: 15px; height: 15px;" /></td>
</tr>
<tr>
<td>
<input type="hidden" name="hp" value="' . $iHuidige_pagina . '" />
<select name="pp" onchange="this.form.submit();"><option value=" " selected="selected">Per pagina:</option>';
foreach($iPerpagina_DDB as $itemDDB) {
if ($itemDDB != $iPerpagina_DDB[0]) {
echo '<option value="' . $itemDDB . '">' . $itemDDB . ' resultaten per pagina</option>';
}
}
echo '</select></td>
</tr>
</table>
</div>
</form>
<div style="margin: 3px 2px 3px 2px;">
<form method="get" action="index.php">
<div id="ddb" class="pagec" style="display: none;">
<table border="0">
<tr>
<td><b>Ga naar pagina:</b></td>
<td>
<img src="http://files.wesdesignz.nl/min.gif" alt="Sluiten" title="Sluiten" onclick="javascript:changeStatus(0); return false;" style="width: 15px; height: 15px;" />
</td>
</tr>
<tr>
<td>
<select name="hp" onchange="this.form.submit();"><option value=" " selected="selected">Ga naar pagina:</option>';
for ($i = 1; $i <= $iAantal_paginas; $i++) {
echo '<option value="' . $i . '">Naar pagina ' . $i . '</option>';
}
echo '</select>
<input type="hidden" name="pp" value="' . $iPerpagina . '" />
</td>
<td>
<input type="submit" value="Go!" />
</td>
</tr>
</table>
</td>
<td style="width: 200px;">';
if ($iAantal_paginas > 1) {
echo '</div>
</form>
<div style="margin: 3px 2px 3px 2px;"><table border="0" class="paginanav"><tr><td class="prepage"><nobr>Pagina <b>' . $iHuidige_pagina . '</b> van <b>' . $iAantal_paginas . '</b></nobr></td>';
for ($i = 1; $i <= $iAantal_paginas; $i++) {
$iFirstresult = $i * $iPerpagina - $iPerpagina;
$iLastresult = $i * $iPerpagina;
if ($i != $iHuidige_pagina) {
echo '<td class="page" onmouseover="this.className=\'pageh\';" onmouseout="this.className=\'page\';" align="center"><a href="index.php?hp=' . $i . '&pp=' . $iPerpagina . '" class="page" title="Geef resultaten ' . $iFirstresult . ' tot ' . $iLastresult . ' weer">' . $i . '</a></td>';
} else {
echo '<td class="pagec" onmouseover="this.className=\'pagech\';" onmouseout="this.className=\'pagec\';" align="center"><a href="index.php?hp=' . $i . '&pp=' . $iPerpagina . '" class="page" title="Geef resultaten ' . $iFirstresult . ' tot ' . $iLastresult . ' weer"><b>' . $i . '</b></a></td>';
}
}
echo '<td class="pagec"><span class="ddb_arrow" onclick="javascript:changeStatus(1); return false;">▼</a></td>';
}
echo '<td class="pagec" style="width: 60px; padding-left: 2px; padding-right: 2px;"><span class="ddb_arrow" onclick="javascript:changeStatus(2); return false;">Per pagina</a></td>';
echo '</tr></table></div>';
echo '</td></tr></table>';
} else {
echo '<h4><b>Geen output gevonden</b></h4>';
echo '<p><br />MySQL gaf geen resultaten terug</p>';
}
?>
</body>
</html>
[/code]
Reacties
0