Der Blog
Bewertet wurde in dem Projekt die Funktionalität des Blogs, deshalb habe ich keinen grossen Wert auf das Optische gelegt. Wir bekamen eine Vorlage bezüglich dem Design zur Verfügung gestellt.Als "Server" haben wir XAMPP benutzt. Damit kann man eine Seite, die man entwickelt, auf dem localhost hosten.
Die Hauptseite für nicht eingeloggte Besucher sieht so aus:
Mit den Buttons oben rechts ("Register" und "Login") kann man sich entweder registrieren oder einloggen.
Benutzerverwaltung
Um in einem Blog einen Beitrag posten zu können, benötigt man natürlich zuerst ein Konto.
Die Benutzerdaten werden normalerweise in einer Datenbank gespeichert. Wir konnten wählen, ob wir die Daten in Tabellen (SQL-Abfragen) oder Textdateien speichern. Ich habe mich für Textdateien entschieden, da dies der eigentliche Stoff für die Modulabschlussprüfung sein wird.
Ein Besucher der Website möchte sich also ein neues Konto erstellen. Als Benutzername muss eine gültige E-Mail-Adresse angegeben werden. Die E-Mail-Adresse darf natürlich nicht schon zu einem anderen Benutzerkonto gehören.
So sieht das Registrierungsformular aus:
Hier sind eigentlich nur die E-Mail-Adresse und das Passwort zur Benutzerregistration notwendig, die anderen Punkte könnte man später auch noch einbauen.
So sieht das Registrierungsformular aus:
Wenn sich ein neuer Benutzer auf der Seite registriert, werden Benutzername und Passwort (in verschlüsselter Form) in die Benutzer-Textdatei, welche sich auf dem Server befindet, gespeichert. Sollte die E-Mail-Adresse bereits vergeben sein, wird man benachrichtigt, dass man eine andere E-Mail-Adresse eingeben muss.
Hat man bereits ein Konto, klickt man auf der Hauptseite auf "Login" und folgendes Fenster erscheint:
Hier müssen dann die bei der Registration verwendete E-Mail-Adresse und das Passwort eingegeben werden. Es wird nun wieder die Benutzer-Textdatei auf dem Server geöffnet und nach dem eingegebenen Benutzernamen gesucht. Ist dieser vorhanden, wird das eingegeben Passwort mit dem in der Datei bereits gespeicherten Passwort verglichen, stimmen diese überein, ist man eingeloggt.
Ansonsten wird man auch hier wieder benachrichtigt.
War die Registration bzw. das Anmelden erfolgreich, wird man in beiden Fällen zurück zur Hauptseite weitergeleitet und ist eingeloggt:
Sobald man eingeloggt ist, sind die Buttons oben rechts mit "Blogs" und "Logout" beschriftet.
Mit Letzterem meldet man sich wieder ab von der Seite.
Damit man auf der Seite eingeloggt bleibt, auch wenn man zu einer anderen navigiert, habe ich Sessions verwendet. Damit können im Prinzip globale Variablen gesetzt werden, auf die jede Seite zugreifen kann. Die Session-Variable "Benutzer" speichert den Benutzernamen des aktuell eingeloggten Benutzers.
Der Blogeintrag, der zu oberst zu sehen ist, ist der Neuste. In der ersten Zeile steht der Blogger, in der zweiten Zeile der Titel des Blogs und ab der dritten Zeile der Inhalt des Blogeintrags.
Wenn man nun wieder auf "Blogs" klickt und dann oben links auf "Meine Blogs" gelangt man zu folgender Seite:
Hier sieht man die Titel derjenigen Blogs, deren Ersteller mit dem zurzeit eingeloggten Benutzer übereinstimmt.
Dazu wird also wieder die Blog-Textdatei auf dem Server geöffnet und jeder Eintrag überprüft, ob der Wert in der Session-Variable "Benutzer" mit einem der Einträge übereinstimmt. Ist dies der Fall, wird der Titel des Blogeintrags hier angezeigt. Aus dem Titel wird dann direkt ein Link generiert. Klickt man auf einen dieser Links, wird man zum Bearbeiten des Blogeintrags weitergeleitet.
Diese Seite ist sehr ähnlich wie die zum Erstellen eines Blogeintrags, nur kann hier der Titel nicht bearbeitet werden, der Inhalt allerdings schon.
Klickt man hier auf "Senden", sollte der gespeicherte Blogeintrag mit dem, der gerade bearbeitet wurde, überschrieben werden.
Dies sind die wichtigsten Funktionen des Projekts, man könnte sicherlich noch sehr viel Zeit investieren, um Verbesserungen/Ergänzungen vorzunehmen.
Hat man bereits ein Konto, klickt man auf der Hauptseite auf "Login" und folgendes Fenster erscheint:
Hier müssen dann die bei der Registration verwendete E-Mail-Adresse und das Passwort eingegeben werden. Es wird nun wieder die Benutzer-Textdatei auf dem Server geöffnet und nach dem eingegebenen Benutzernamen gesucht. Ist dieser vorhanden, wird das eingegeben Passwort mit dem in der Datei bereits gespeicherten Passwort verglichen, stimmen diese überein, ist man eingeloggt.
Ansonsten wird man auch hier wieder benachrichtigt.
War die Registration bzw. das Anmelden erfolgreich, wird man in beiden Fällen zurück zur Hauptseite weitergeleitet und ist eingeloggt:
Mit Letzterem meldet man sich wieder ab von der Seite.
Damit man auf der Seite eingeloggt bleibt, auch wenn man zu einer anderen navigiert, habe ich Sessions verwendet. Damit können im Prinzip globale Variablen gesetzt werden, auf die jede Seite zugreifen kann. Die Session-Variable "Benutzer" speichert den Benutzernamen des aktuell eingeloggten Benutzers.
Blogbeitrag erstellen
Will man einen Blogbeitrag erstellen muss man zunächst eingeloggt sein. Dann gibt es oben rechts den Button "Blogs", dieser führt zu folgender Seite:
Hier gibt es wieder ein Formular mit zwei Textfeldern und einem "Senden" Button. Im oberen Textfeld kann man nun den Titel des Blogs eingeben und im unteren den Inhalt des Blogs.
Hat man den Blog geschrieben und möchte diesen veröffentlichen, muss man auf "Senden" klicken.
Es wird nun auf dem Server die Blog-Textdatei geöffnet. In dieser befinden sich die veröffentlichten Blogs. Zum Speichern des Blogs werden natürlich Titel und Inhalt benötigt, des Weiteren ist aber auch der Benutzername sehr wichtig, da sonst der Blog nicht dem Ersteller zugeordnet werden könnte. Der Benutzername des eingeloggten Benutzers muss also auch in der Blog-Textdatei gespeichert werden.
Hat man den Blog veröffentlicht, so kommt man wieder auf die Startseite und der neue Blog ist dort zu sehen:
Der Blogeintrag, der zu oberst zu sehen ist, ist der Neuste. In der ersten Zeile steht der Blogger, in der zweiten Zeile der Titel des Blogs und ab der dritten Zeile der Inhalt des Blogeintrags.
Wenn man nun wieder auf "Blogs" klickt und dann oben links auf "Meine Blogs" gelangt man zu folgender Seite:
Hier sieht man die Titel derjenigen Blogs, deren Ersteller mit dem zurzeit eingeloggten Benutzer übereinstimmt.
Dazu wird also wieder die Blog-Textdatei auf dem Server geöffnet und jeder Eintrag überprüft, ob der Wert in der Session-Variable "Benutzer" mit einem der Einträge übereinstimmt. Ist dies der Fall, wird der Titel des Blogeintrags hier angezeigt. Aus dem Titel wird dann direkt ein Link generiert. Klickt man auf einen dieser Links, wird man zum Bearbeiten des Blogeintrags weitergeleitet.
Diese Seite ist sehr ähnlich wie die zum Erstellen eines Blogeintrags, nur kann hier der Titel nicht bearbeitet werden, der Inhalt allerdings schon.
Klickt man hier auf "Senden", sollte der gespeicherte Blogeintrag mit dem, der gerade bearbeitet wurde, überschrieben werden.
Dies sind die wichtigsten Funktionen des Projekts, man könnte sicherlich noch sehr viel Zeit investieren, um Verbesserungen/Ergänzungen vorzunehmen.