Mew
Erfahrenes Mitglied
Hallo Leute,
ich habe vor einiger Zeit eine Blätterfunktion gesucht. Das hat ja alles auch gut geklappt. Nun habe ich aber ein fertiges Newsscript, das eine Blätterfunktion bekommen soll.
Ich habe es einfach nicht hinbekommen in das Script die Funktion einzubauen.
Das Script:
Es hat eine for Schleife wo neue News immer dazu angezeit werden.
Jetzt kommt mein Problem, wie mach ich es, dass z.B. auf die erste Seite nur die neusten 5 news angezeigt werden und dann auf der nächsten die etwas älteren 5 news....
Also dass immer nur jeweils 5 news auf der seite zu finden sind?
Wie macht man das am Besten.
Hier mein paging Script:
Hoffe mir kann jemand helfen. MFG
ich habe vor einiger Zeit eine Blätterfunktion gesucht. Das hat ja alles auch gut geklappt. Nun habe ich aber ein fertiges Newsscript, das eine Blätterfunktion bekommen soll.
Ich habe es einfach nicht hinbekommen in das Script die Funktion einzubauen.
Das Script:
PHP:
<?php
$res = mysql_db_query("table", "select * from news");
$num = mysql_num_rows($res);
for ($i=0; $i<$num; $i++)
{
$id = mysql_result($res, $i, "ID");
$ti = parse(mysql_result($res, $i, "Titel"));
$in = parse(mysql_result($res, $i, "Inhalt"));
$da = datum(mysql_result($res, $i, "Datum"));
$au = parse(mysql_result($res, $i, "Autor"));
echo "<table id=\"news\" cellpadding=\"0\" cellspacing=\"0\">
<tr>
<td id=\"titel\">".$ti."</td>
</tr>
<tr>
<td id=\"new\">".$in."</td>
</tr>
<tr>
<td id=\"footer\">Nr. ".$id." | ".$da." | Autor: <a href=\"profile.php?id=".$id."\">".$au."</a>
</td>
</tr>
</table>";
}
?>
Es hat eine for Schleife wo neue News immer dazu angezeit werden.
Jetzt kommt mein Problem, wie mach ich es, dass z.B. auf die erste Seite nur die neusten 5 news angezeigt werden und dann auf der nächsten die etwas älteren 5 news....
Also dass immer nur jeweils 5 news auf der seite zu finden sind?
Wie macht man das am Besten.
Hier mein paging Script:
PHP:
<?php
include 'inc/config.php';
// how many rows to show per page
$rowsPerPage = 4;
// by default we show first page
$pageNum = 1;
// if $_GET['page'] defined, use it as page number
if(isset($_GET['page']))
{
$pageNum = $_GET['page'];
}
// counting the offset
$offset = ($pageNum - 1) * $rowsPerPage;
$query = "SELECT * FROM news LIMIT $offset, $rowsPerPage";
$result = mysql_query($query) or die('Error, query failed');
// print the random numbers
while($row = mysql_fetch_array($result))
{
echo $row['val'] . '<br>';
}
echo '<br>';
// how many rows we have in database
$query = "SELECT COUNT(*) AS numrows FROM news";
$result = mysql_query($query) or die('Error2, query failed');
$row = mysql_fetch_array($result, MYSQL_ASSOC);
$numrows = $row['numrows'];
// how many pages we have when using paging?
$maxPage = ceil($numrows/$rowsPerPage);
// print the link to access each page
$self = $_SERVER['PHP_SELF'];
$nav = '';
for($page = 1; $page <= $maxPage; $page++)
{
if ($page == $pageNum)
{
$nav .= " $page "; // now need to create a link to current page
}
else
{
$nav .= " <a href=\"$self?page=$page\">$page</a> ";
}
}
// creating previous and next link
// plus the link to go straight to
// the first and last page
if ($pageNum > 1)
{
$page = $pageNum - 1;
$prev = " <a href=\"$self?page=$page\">[Prev]</a> ";
$first = " <a href=\"$self?page=1\">[First Page]</a> ";
}
else
{
$prev = ' '; // we're on page one, don't print previous link
$first = ' '; // nor the first page link
}
if ($pageNum < $maxPage)
{
$page = $pageNum + 1;
$next = " <a href=\"$self?page=$page\">[Next]</a> ";
$last = " <a href=\"$self?page=$maxPage\">[Last Page]</a> ";
}
else
{
$next = ' '; // we're on the last page, don't print next link
$last = ' '; // nor the last page link
}
// print the navigation link
echo $first . $prev . $nav . $next . $last;
?>
Hoffe mir kann jemand helfen. MFG