<?php
include("../global.inc.php");
$sql="SELECT * FROM news ORDER BY news_datetime DESC";
$res=mysql_query($sql);
?>
<html>
<head>
<title></title>
</head>
<body>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>
<table width="100%" border="0" cellspacing="1" cellpadding="0">
<tr>
<td class="top">Datum/tijd</td>
<td class="top">Titel</td>
<td class="top">Inhoud</td>
<td class="top">Wissen/Bewerken</td>
</tr>
<?
while($news=mysql_fetch_array($res)){
$unixtime = strtotime($news['news_datetime']);
?>
<?
$news['news_main'] = str_replace("[space]","<br>",$news['news_main']);
$news['news_main'] = str_replace("[/space]","</br>",$news['news_main']);
$news['news_main'] = str_replace("[b]","<b>",$news['news_main']);
$news['news_main'] = str_replace("[/b]","</b>",$news['news_main']);
$news['news_main'] = str_replace("[i]","<i>",$news['news_main']);
$news['news_main'] = str_replace("[/i]","</i>",$news['news_main']);
$news['news_main'] = str_replace("[u]","<u>",$news['news_main']);
$news['news_main'] = str_replace("[/u]","</u>",$news['news_main']);
$news['news_main'] = str_replace("[img]","<img border='0' src='uploads/",$news['news_main']);
$news['news_main'] = str_replace("[/img]","'>",$news['news_main']);
$news['news_main'] = str_replace("[img2]","<img border='0' src='",$news['news_main']);
$news['news_main'] = str_replace("[/img2]","'>",$news['news_main']);
$news['news_main'] = eregi_replace("\[url\]www.([^\[]*)","<a href=\"http://www.\\1\">\\1", $news['news_main']);
$news['news_main'] = eregi_replace("\[url\]([^\[]*)","<a href=\"\\1\" >\\1", $news['news_main']);
$news['news_main'] = eregi_replace("(\[url=)([A-Za-z0-9_~&=;\?:%@#./\-]+[A-Za-z0-9/])(\])", "<a href=\"http://\\2\">", $news['news_main']);
$news['news_main'] = eregi_replace("\[url](http://(.*))", "<a href=\"\\1\" >\\1", $news['news_main']);
$news['news_main'] = eregi_replace("(\[/url\])", "</a>", $news['news_main']);
$news['news_main'] = str_replace("http://http://", "http://", $news['news_main']);
$news['news_main'] = eregi_replace("([a-zA-Z0-9_-]+)@([a-zA-Z0-9\._-]+)(\.[a-zA-Z]+)", "<a href=\"mailto:\\1@\\2\\3\">\\1@\\2\\3</a>", $news['news_main']);
$arraydag = array(
"Zondag ",
"Maandag ",
"Dinsdag ",
"Woensdag ",
"Donderdag ",
"Vrijdag ",
"Zaterdag "
);
$dagvanweek = $arraydag[date("w", $unixtime)];
$arraymaand = array(
"Januari",
"Februari",
"Maart",
"April",
"Mei",
"Juni",
"Juli",
"Augustus",
"September",
"Oktober",
"November",
"December"
);
$dag = date("j", $unixtime);
$maand= $arraymaand [date("n" , $unixtime) - 1];
$jaar = date(" Y" , $unixtime);
?>
<tr bgcolor="#F9F9F9">
<td><?php echo "$dagvanweek $dag $maand $jaar"; ?></td>
<td><?php echo $news['news_header'] ?></td>
<td><?php echo $news['news_main'] ?></td>
<?php
}
mysql_close();
?>
</tr>
</table>
</body>
</html>
Nu wil ik maximaal 10 berichten per pagina laten zien.
Ik gebruik de onderstaande code. De paginanummers werken maar op elke pagina zie ik alle berichten. Dus wanneer ik bv 16 berichten heb zie ik op pagina 1 , 16 berichten. Op pagina 2 zie ik eveneens 16 berichten.
<?php
//Constante waarde definieren die weergeeft hoeveel berichten er per pagina maximaal kunnen getoond worden
define("MAX_AANTAL_BERICHTEN",15);
//Ophalen van de pagina-nummer.
if(!isset($_GET['pagina_nr']))$pagina_nr = 1;
else $pagina_nr = $_GET['pagina_nr'];
$start_nr = ($pagina_nr-1)*MAX_AANTAL_BERICHTEN; //Vanaf waar we selecteren uit de database
$totaal_aantal_berichten = mysql_result(mysql_query("SELECT COUNT(id) FROM news"),0);
if($totaal_aantal_berichten!=0) $aantal_paginas = ceil($totaal_aantal_berichten/MAX_AANTAL_BERICHTEN);
else $aantal_paginas=1;
?>
<?
echo 'Pagina: ';
for($i=1;$i<=$aantal_paginas;$i++)
{
if($i==$pagina_nr) echo ' | '.$i;
else echo ' | <a href="news.php?pagina_nr='.$i.'">'.$i.'</a>';
}
?>
Mijn database ziet er als volgt uit:
create table news (
id int(11) unsigned NOT NULL auto_increment,
news_header text NOT NULL,
news_main TEXT not null,
news_datetime DATE not null,
PRIMARY KEY (id)
) TYPE=MyISAM;
Ziet iemand wat er verkeerd is?