Wieso schreibst du es dir nicht selber?
Habe mir mal ein paar Gedanken dazu gemacht. Zwar ist es ohne Design, aber dafür kann man es selber anpassen, wie man es haben will:
- Erstelle eine Datei: news.php
mit folgendem Code:
News
Überschrift:
Text:
- Erstelle eine Datei: add.php
mit folgendem Code:
<?php $head=$_GET['head'];
$text=$\_GET['text'];
// Array muss vorher existieren, ansonsten kann man nicht pushen (array\_push: siehe if-Anweisung)
$zahl=array("0");
// #### Ermitteln des naechsten freien Dateinamens ####
// Auslesen der vorhandenen Dateien
$do = opendir("news");
while (false !== ($file = readdir($do)))
{
if (!preg\_match("/^\.{1,2}$/",$file))
{
// Zerlegung des Dateinamens, so dass die Erweiterung .txt weg faellt.
$x=substr($file, 0, strpos($file, '.'));
// Den Dateinamen in Array schreiben
array\_push($zahl,$x);
}
}
closedir($do);
// Die 0 aus dem Array entfernen
unset($zahl[0]);
// Array sortieren
asort($zahl);
// Auflistung der Datei-Namen aus dem Array
echo "Vorhandene Dateien: ";
foreach($zahl as $x)
echo $x." | ";
// #### Anlegen der Datei ####
if($\_REQUEST['speichern'])
{
// Anlegen des naechsten freien Dateinamen (x+1)
$datei="./news/".($x+1).".txt";
// Vorsichtshalber eine Pruefung, ob die Datei schon existiert (kann eigentlich nicht)
if(file\_exists($datei))
{
echo "Es ist ein Fehler aufgetreten!";
}
else
{
// Datei wird geoeffnet und zum Lesen & Schreiben freigegeben
$file = fopen($datei, "w+");
// Die Inhalte $head und $text werden in die Datei geschrieben
// Die Ueberschrift ($head) wird maskiert mit ~~~~ , um sie spaeter vernuenftig auszulesen
// (mir ist nichts besseres eingefallen)
// Man haette sicherlich die Ueberschrift als Dateinamen verwenden koennen,
// und zur Sortierung noch ein Datumsfeld hinzufuegen koennen.
// Waere sicherlich besser gewesen)
fwrite($file, $head." ~~~~".$text);
fclose($file);
echo "
Die Datei " ".$datei." " wurde erstellt!
";
echo "Inhalt:
";
echo " **".$head."**
".$text;
}
}
else
{
echo "Es ist ein Fehler aufgetreten";
}
?\>
[ALLE NEWS ANZEIGEN](show.php)
3. Erstelle eine Datei: show.php
mit folgendem Code:
<?php // #### Kopiert aus add.php ####
// Array muss vorher existieren, ansonsten kann man nicht pushen (array\_push: siehe if-Anweisung)
$zahl=array("0");
// #### Ermitteln des naechsten freien Dateinamens ####
// Auslesen der vorhandenen Dateien
$do = opendir("news");
while (false !== ($file = readdir($do)))
{
if (!preg\_match("/^\.{1,2}$/",$file))
{
// Zerlegung des Dateinamens, so dass die Erweiterung .txt weg faellt.
$x=substr($file, 0, strpos($file, '.'));
// Den Dateinamen in Array schreiben
array\_push($zahl,$x);
}
}
closedir($do);
// Die 0 aus dem Array entfernen
unset($zahl[0]);
// Array sortieren
asort($zahl);
// #### bis hier kopiert ####
// Foreach-Schleife sucht nach allen Dateinamen im Array
foreach($zahl as $x)
{
$datei="./news/".$x.".txt";
// Die aktuelle Datei wird zum LESEN geoeffnet
$file=fopen($datei,"r");
// Solange der Datei-Leser nicht am Ende der Datei angelangt ist,
// soll eine Schleife laufen
while(!feof($file))
{
// Der Inhalt der Datei wird ausgegeben, wobei die Zahl 100 hier
// die Breite bis zum naechsten Zeilenumbruch darstellt
$text=fgets($file,100);
$head=substr($text, 0, strpos($text," ~~~~"));
echo "**".$head."
";
// Den Teil $head aus dem $text entfernen und die ~~~~
$text=str\_replace($head." ~~~~","",$text);
echo $text;
}
fclose($file);
echo "
";
}
?\>
4. Erstelle im selben Verzeichnis einen Ordner namens: news
Richtig fehlertolerant ist das Programm nicht, aber man kann es sich ja umändern, wie man will.
Der User kann eine Überschrift mit seinem Text eingeben und alles wird in Textdateien gespeichert. Diese Textdateien werden wieder ausgelesen und können als News verwendet werden. Wolltest du sowas???
(getestet mit WAMPP)**