News Management System mit PHP und MySQL – Teil 1

Wenn Sie auf Ihrer Webseite/Startseite News anzeigen lassen möchten, sollten Sie sich dieses Script mal genauer anschauen. Es bietet Ihnen die Möglichkeit schnell und einfach ein komfortables Newssystem in Ihre Webseite zu integrieren.

Da die Daten zu den einzelnen News in einer MySQL-Datenbank abgelegt werden, müssen Sie zunächst eine Tabelle (am besten mit Hilfe von phpMyAdmin) anlegen, die folgende Struktur hat:

CREATE TABLE `News` (
`ID` INT NOT NULL AUTO_INCREMENT,
`Titel` VARCHAR( 80 ) NOT NULL,
`Newstext` TEXT NOT NULL,
`URL` VARCHAR( 255 ),
`Autor` VARCHAR( 50 ) NOT NULL,
`Erstellt` DATETIME NOT NULL,
PRIMARY KEY ( `ID` )
);

Die Daten werden dann in der Tabelle so abgespeichert:

ID Titel Newstext URL Autor Erstellt
1 Neues Newssystem Seit heute haben wir auf unserer Webseite ein neues Newssystem. NULL Webmaster 2005-07-05 10:34:03
2 Rubrik Scripte neu strukturiert Die Rubrik ‘Scripte’ wurde völlig umgestaltet und neu strukturiert. Schauen Sie doch einfach mal wieder rein. http://www.ihre
domain.de/
scripte.html
Karl Otto 2005-07-06 12:48:23
3 Webseiten mit PHP In diesem neuen Artikel erfahren Sie, wie Sie mit PHP Webseiten erstellen können. http://www.ihre
domain.de/
webseiten_mit
_php.html
Franz Müller 2005-07-06 13:59:54

Binden Sie jetzt das folgende Script mit der PHP-Funktion include(...) an der Stelle in Ihrer Webseite ein, wo die Newsliste erscheinen soll:

<?php
include("newssystem.php");
?>
<?php

$DatabaseHost = "localhost";
$DatabaseUser = "user";
$DatabasePassword = "password";
$Database = "mydatabase";
$TableNews = "News";

$MaximaleAnzahlNews = 10;

$DatabasePointer = mysql_connect($DatabaseHost, $DatabaseUser, $DatabasePassword);
mysql_select_db($Database, $DatabasePointer);

$ResultPointer = mysql_query("SELECT Titel, Newstext, URL, Autor, Erstellt FROM $TableNews ORDER BY Erstellt DESC LIMIT $MaximaleAnzahlNews", $DatabasePointer);

if(mysql_num_rows($ResultPointer) > 0)
{
    for($i = 0; $i < mysql_num_rows($ResultPointer); $i++)
    {
        $Result = mysql_fetch_object($ResultPointer);
        echo"<table border="0" cellpadding="2" cellspacing="1">",
            "<tr>",
            "<td><b>",
            $Result->Titel,
            "</b></td>",
            "<td align="right"><b><i>",
            substr($Result->Erstellt, 8, 2) . "." . substr($Result->Erstellt, 5, 2) . "." . substr($Result->Erstellt, 0, 4) . " " . substr($Result->Erstellt, 10, 6),
            "</i></b></td>",
            "</tr>",
            "<tr>",
            "<td colspan="2">",
            nl2br($Result->Newstext),
            "</td>",
            "</tr>",
            "<tr>",
            "<td>";

        if(!empty($Result->URL))
        {
            echo"<a href="",
                $Result->URL,
                "">Mehr</a>";
        }
        else
        {
            echo"&nbsp;";
        }

        echo"</td>",
            "<td align="right"><i>von ",
            $Result->Autor,
            "</i></td>",
            "</tr>",
            "</table><br><br>";
    }
}
else
{
    echo"Es wurden leider keine aktuellen News gefunden.";
}

?>

Nachdem Sie das Script an Ihre Datenbankverbindung angepasst haben, binden Sie das Script mit oben beschriebenden include-Befehl in Ihre Webseite ein.
Beim Aufruf der Seite werden aus der Tabelle die letzten zehn (bzw. je nachdem, was Sie in der Variable MaximaleAnzahlNews angegeben haben) Einträge ausgelesenund pro Nachricht in einer Tabelle angezeigt. Sofern der Nachricht eine URL zugeordnet wurde, wird diese angehängt und für den Fall, dass gar keine News in der Tabelle gespeichert sind, wird eine entsprechende Meldung ausgegeben.

Im nächsten Teil dieses Artikels finden Sie dann die Verwaltungsoberfläche zum Erstellen und Löschen von News.

2040 Tage ago by in PHP MySQL | You can follow any responses to this entry through the RSS feed. You can leave a response, or trackback from your own site.

Leave A Response