Hallo Markus,
ein wenig PHP ist ja auch schon vorhanden
diese Information, die von Dir bevorzugte Programmiersprache, ist schon einmal hilfreich. Denn nur dann kann man Dir konkretere Hinweise geben, *wie* Du eine Spezialaufgabe angehen könntest.
» ja sicher. Textdateien zu bearbeiten gehört zu den Grundaufgaben, die (fast alle) Programmiersprachen erledigen können.
Sehr gut, somit ist mir schon mal ein Stein vom Herzen gefallen. Nun ist nur noch die Frage des WIE?
dafür verwendest Du Dateisystem-Funktionen, zum Beispiel kannst Du mit file_put_contents() den Inhalt einer Zeichenkette in eine Datei schreiben.
» Verzeichnisse zu erstellen, ist in der Regel ebenfalls kein Problem.
auch hier wieder die gleiche Frage, WIE?
Beispielsweise mit mkdir(), diese Funktion findest Du nicht überraschend ebenfalls in der Liste der Dateisystem-Funktionen, auf die Dich Hans ebenfalls hingewiesen hat.
Zufallsgenerator für Zahlen oder so?
Naja, einen Zufallsgenerator würd' ich grad nicht benutzen, Du musst dies in einem weiteren Zusammenhang sehen, Deiner Benutzerverwaltung :-)
» Sprich: eine .htaccess für jedes einzelne Verzeichnis. Jede einzelne dieser Dateien läßt den jeweils zuständigen Benutzer zu - und sonst niemand.
Auch sehr gut, nur wie erstellt man nur mit den Daten eines Anmelders ein solche Datei und so ein Verzeichniss?
diese Datei ist supereinfach zu erstellen. Du musst folgendes wissen:
- Verzeichnisname: um die Datei am richtigen Ort abspeichern zu können,
- Benutzername: damit der richtige Benutzer darauf zugreifen darf
Wenn Du Dir im Abschnitt "Getting it working" des apache-Handbuches die erste Beispieldatei anschaust, ich zitiere:
AuthType Basic
AuthName "Restricted Files"
# (Following line optional)
AuthBasicProvider file
AuthUserFile /usr/local/apache/passwd/passwords
Require user rbowen
siehst Du, dass bei Verwendung einer zentralen Benutzerdatei für die http-Authentifizierung Du nur den entsprechenden Benutzernamen anhängen musst. Das heißt Du kannst eine Vorlage benutzen, an die Du eine einzige Zeile anhängst - und der variable Wert ist der Benutzername. Mehr zur http-Authentifizierung findest Du unter anderem in SELFHTML aktuell: .htaccess Zugriffskontrolle von Michael Schröpl.
» » Nachdem die Daten abgeschickt sind, erhält der User an die von ihm eingetragene Emailadresse ein Formular mit seinen Daten und einen Link auf eine Login-Seite, wo er sich mit der Email und dem Passwort anmelden soll.
Grundsätzlich musst Du jedoch mehr zu einem Benutzer speichern als die standardmäßige Benutzerdatei des apache aufweist, mindestens
- Benutzernamen,
- E-Mail-Adresse,
- Benutzerverzeichnis
- Passwort (am besten nicht im Klartext)
+ Felder für den Zeitpunkt des Mailversands der Zugangsdaten
und der Bestätigung => Aktivierung des Accounts
Wie Du das im einzelnen löst, das ist Deine Aufgabe.
Fang' einfach damit an, einfache Aufgaben zu erledigen. Steigere allmählich den Schwierigkeitsgrad, zum Beispiel könntest Du folgende Funktionen schreiben:
1. Schreibe eine Funktion, die
- eine fest vorgegebene Datei einliest,
- und den Inhalt unter einem fest vorgegebenen (anderen) Namen abspeichert
2. Schreibe eine Funktion, die
- eine fest vorgegebene Datei einliest,
- an den Inhalt eine neue Zeile mit fest vorgegebenem Inhalt anfügt
- und den geänderten Inhalt unter einem fest vorgegebenen (anderen) Namen abspeichert
3. Schreibe eine Funktion, die
- eine Zeichenkette entgegennimmt,
- eine fest vorgegebene Datei einliest,
- an den Inhalt eine neue Zeile mit dem übergebenen Inhalt anfügt
- und den geänderten Inhalt unter einem fest vorgegebenen (anderen) Namen abspeichert
4. Schreibe eine Funktion, die
- eine Zeichenkette zum Anhängen entgegennimmt,
- einen Verzeichnisnamen entgegennimmt
- eine fest vorgegebene Datei einliest,
- an den Inhalt eine neue Zeile mit dem übergebenen Inhalt anfügt,
- und den geänderten Inhalt in dem übergebenen Verzeichnis (bitte
vorher anlegen) unter einem fest vorgegebenen Dateinamen abspeichert
...
Du solltest sehen, dass Du mit diesen Schritten das Anlegen der Konfigurationsdatei für deine Benutzer übst.
Bitte achte auf Fehlerbehandlung. Dateioperationen können fehlschlagen, die Funktionen liefern typischerweise Fehlermeldungen in diesem Fall zurück, die Du auswerten kannst.
Freundliche Grüße
Vinzenz