http://tut.php-q.net
hab das einfach Newsscript genommen dazu ein Formular geschrieben und versucht die Funktionen aus dem erweiterten Teil eingebaut..das Loginscipt hab ich auch drin eingebaut...
der Quellcode für die news.php sieht jetzt so aus...
Code:
<?php echo "<h2>News</h2>\n"; define('DATE_STYLE', '%d.%m.%Y %T Uhr'); define('LIMIT_NUM', 10); $sql = "SELECT COUNT(*) as Anzahl FROM news;"; $result = mysql_query($sql) OR die(mysql_error()); $anzahl = mysql_result($result, 0); $start = isset($_GET['page'])?(int)$_GET['page']:1; /* Die Syntax von ... = .... ? .... : ....; * kann man auf * http://www.php.net/manual/de/language.expressions.php * nachlesen. */ if(!defined('LIMIT_NUM')) { die("Benötigte Konstante LIMIT_NUM ist nicht definiert"); } // Anzahl der Pages berechnen. $num_pages = ceil($anzahl/LIMIT_NUM); // Anzahl auf min. 1 setzen if(!$num_pages) { $num_pages = 1; } // Die Start-Page muss zwischen // 1 und $num_pages liegen if($start < 1) { $start = 1; } if($start > $num_pages) { $start = $num_pages; } // offset für den Query bestimmen $offset = ($start - 1) * LIMIT_NUM; $sql = "SELECT Autor, Titel, Inhalt, DATE_FORMAT(Datum, '".DATE_STYLE."') AS Changedatum FROM News ORDER BY Datum DESC LIMIT ".$offset.",".LIMIT_NUM.";"; $result = mysql_query($sql) OR die(mysql_error()); $row = mysql_fetch_assoc($result); $email = $row['Autor']; $sql_E = "SELECT Email FROM users WHERE Name = '$email'"; $result_E = mysql_query($sql_E) OR die(mysql_error()); $row_E = mysql_fetch_assoc($result_E); if(mysql_num_rows($result)) { while($row = mysql_fetch_assoc($result)) { echo "<div class=\"newseintrag\">\n"; echo " <div class=\"Datum\">\n"; echo $row['Changedatum']; echo " </div>\n"; echo " <div class=\"Titel\">\n"; echo $row['Titel']; echo " </div>\n"; echo " <div class=\"Name\">\n"; echo "<a href=mailto:".$row_E['Email']." title=".$row['Autor'].">".$row['Autor']."</a>"; echo " </div>\n"; echo " <div class=\"Inhalt\">\n"; echo nl2br($row['Inhalt']); // \n in umwandeln echo " </div>\n"; echo "</div>\n"; } } else { echo" Keine News vorhanden</p>\n"; } // Page-Links nur anzeigen, wenn es mehr als eine sind. if($num_pages > 1) { echo " \n"; for($i = 1; $i <= $num_pages; $i++) { if($i == $start) { // ich bin ja schon auf der Seite. Also // Seitenzahl ohne Link erzeugen echo $i."\n"; } else { echo "<a href=\"index.php?section=news&page=".$i."\">\n"; echo $i."\n"; echo "</a>\n"; } } echo "</p>\n"; } ?>
Einen Kommentar schreiben: