Moin,
ich habe jetzt den ersten Prototyp der Forumssoftware für einen Wiki-Artikel fertiggestellt. Im Wesentlichen ist es eine sehr stark überarbeitete Version des Forums aus dem SELFHTML-Aktuell-Artikel „Threadbasiertes Forum mit PHP und MySQL“.
Meine Überarbeitungen haben im Wesentlichen zwei Ziele:
- Aktualisierung der auf modernen Systemen nicht mehr lauffähigen Software
- Nutzbarkeit: Das Forum soll zwar möglichst simpel, aber dennoch nutzbar sein
Bereits erledigt:
- unter aktuellen PHP-Versionen (5 und 7) lauffähig gemacht
- Tabellenlayout in
neu.php
entsorgt und auf heutigen Stand gebracht - Die Konfiguration und das HTML-„Template“ in
config.php
bzw.template.inc.php
ausgelagert - das Ganze per CSS etwas ansehnlicher gestaltet
- Anlegen der Datenbank-Tabellen per
init.php
- Vorbelegen der Eingabe-Felder in der
neu.php
über URL-Parameter - Software merkt sich Eingaben, wie z.B. den Nick
- antworten ohne Zitat
Vor allem die letzten drei Punkte erinnern doch etwas an das CForum ;-)
ToDo:
- Fehlermeldungen im Produktiv-Modus nicht ausgeben (in config.php festlegen)
- Pagination: Dazu müsste ich, glaube ich, jeweils das erste Posting eines Threads in der Datenbank gesondert kennzeichnen
- RegEx für E-Mail scheint nicht auf heutige neuen Domains zu passen, beispielsweise wird
mail@example.hamburg
abgelehnt – kennt jemand einen guten RegEx für E-Mails? - Kommentare im Quelltext verbessern, Formatierung überarbeiten
- den zugehörigen Wiki-Artikel schreiben
Fragen:
- habe ich Sicherheitslücken im Code?
- was kann ich stilistisch verbessern – ich will ja auch noch etwas dabei lernen :-)
- Die Variablen (siehe
neu.php
) müssen nicht mehr gelöscht werden, seit sie nicht mehr von PHP automatisch importiert werden (magic_qoutes?), liege ich da richtig?
unset($errors);
unset($Thread);
Ideen für zukünftige Erweiterungen (zu beschreiben in separaten Artikeln):
- User-Accounts (evtl. unter Rückgriff auf den Artikel PHP/Anwendung und Praxis/Loginsystem)
- Syntax für Formatierungen, z.B. Markdown via Parsedown
- Nested-Ansicht
- Datei-Upload (evtl. unter Rückgriff auf den Artikel PHP/Anwendung und Praxis/File Upload)
- Suche
Den Code kann ich derzeit nur als ZIP-Datei zum Download anbieten, wenn ich auch die alten Teile des Programms neu geschrieben habe, kann ich den Code auf GitHub bereitstellen, bisher bin ich mir mit der Lizenz nicht so sicher.
Eine Live-Demo biete ich dann an, wenn ich sicher bin, dass ich keine Sicherheitslücken eingebaut habe...
Ein paar Screenshots:
index.php
lesen.php
neu.php
Was meint ihr dazu?
Gruß
Julius