PHP Mini CMS

som3

Lieutenant
Registriert
Jan. 2010
Beiträge
992
Hallo.
Ich wollte mal nachfragen ob und wie man ein Mini SMC realisieren könnte.

Ich habe die home.php als Startseite.
und eine Admin.php
Auf der Admin.php ist eine Textbox wo ich HTML Text rein geschrieben kann.
Dieser Text wird dann wie im Beispiel unten in die Home.php geschrieben.
Aber quasi nur angeheftet.

Beispiel der Home.php


DATUM UND TIME
HALLO HALLO HALLO
HALLO HALLO HALLO

und wenn ich dann einen neuen Text schreibe Soll es so aussehen:


DATUM UND TIME
TEST TEST TEST
TEST TEST TEST

<hr />

DATUM UND TIME
HALLO HALLO HALLO
HALLO HALLO HALLO

<hr />

Texte aus der Home.php löschen ist nicht nötig. Nur neu oben anheften.

Ich würde mich über eure Hilfe freuen :)
Danke

 
Am einfachsten benutzt du einfach eine Datenbank wie mysql ;)

Auf der Adminseite legst du die Datenbankeinträge an und auf der Home liest du die Einträge aus der Datenbank einfach in einer Schleife aus und gibst es aus.

@unter mir: Stimmt, wollte ich auch noch schreiben :D Am einfachsten einfach mit htaccess absichern.

Gruß
 
Die admin.php ist mit einer htaccess Datei gesichert.

@WilliTheSmith

Hättest du vielleicht einen Link für mich wo das mit der Datenbank erklärt wird?
Also wie man Einträge reinschreibt und auf einer anderen Seite wieder ausliest
 
Ich denke schon.
Ich habe PHPMyAdmin auf dem Webspace.
 
Ja klar könnte ich Wordpress benutzen.. aber dann wäre der Spaß weg :D
Die Website ist ja nur für mich zum Testen üben und machen.
 
Dann würde ich mir doch lieber Apache inkl. allem drum herum offline installieren.
 
Also für diesen Zweck würde ich nicht extra eine MySQL-Datenbank installieren, das ist für ein Textfeld doch etwas overkilled.

Stattdessen braucht es nur eine beschreibbare Text-Datei (also Dateirechte anpassen).

Dann ist es nur eine Frage des SChreibmodus, den man für fopen() verwendet. Wenn man a+ wählt, wird die Datei angelegt, falls sie noch nicht existiert, und falls sie existiert, wird der neue Text am Ende hinzugefügt. Bei w+ verhielte es sich ähnlich, nur dass der bisherige Inhalt überschrieben werden würde, was du ja nicht willst.

PHP:
<?php

$filename = "speicher.txt";
$zeiger = fopen($filename,"a+");

// In $inhalt muss natürlich schon (vor diesem Code oder so) der neue Text sein (z.B. per $inhalt = $_POST['inhalt'];)
fwrite($zeiger, $inhalt);

fclose($zeiger);
?>
 
Benj schrieb:
Also für diesen Zweck würde ich nicht extra eine MySQL-Datenbank installieren, das ist für ein Textfeld doch etwas overkilled.

Stattdessen braucht es nur eine beschreibbare Text-Datei (also Dateirechte anpassen).

Dann ist es nur eine Frage des SChreibmodus, den man für fopen() verwendet. Wenn man a+ wählt, wird die Datei angelegt, falls sie noch nicht existiert, und falls sie existiert, wird der neue Text am Ende hinzugefügt. Bei w+ verhielte es sich ähnlich, nur dass der bisherige Inhalt überschrieben werden würde, was du ja nicht willst.

PHP:
<?php

$filename = "speicher.txt";
$zeiger = fopen($filename,"a+");

// In $inhalt muss natürlich schon (vor diesem Code oder so) der neue Text sein (z.B. per $inhalt = $_POST['inhalt'];)
fwrite($zeiger, $inhalt);

fclose($zeiger);
?>

Jo, daran habe ich auch schon gedacht, aber da wird ein neuer Eintrag ja hinten dran gehängt.

Mit dem gleichen Code habe ich ein Feedback Formular auf der Seite gebaut.
 
Achso, oben soll es angeheftet werden. Naja gut, ist aber auch kein Problem. Muss man dann einfach vorher auslesen (Mode "r") und danach neu schreiben (Mode "w+"), mit dem alten Inhalt hinten dran.
 
Dafür braucht man nicht mal den komplizierten Weg gehen und die Datei mit irgendwelchen Modi öffnen.

Schau dir einfach mal file_get_contents() und file_put_contents() an.

Das sollten zwei Zeilen Code sein.

Code:
$content = file_get_contents('filename.txt');
file_put_contents('filename.txt', $neuerInhalt.$content);
 
Zurück
Oben