Tom: Fehler beim auslesen von $usertype aus Datei

Beitrag lesen

Hello,

wieviele User willst Du mit der Textdatei-Variante verwalten? Werden es mehr als 1000? Sonst mach Dir das Leben nicht so schwer und lege alle Daten als großes Array in der Datei ab.

$_userdata = array();

$name = "PETER";
$table = "guestbook";
$_userdata[$name]['password']='hallo27d';
$_userdata[$name]['rights'][$table]='SRWXCDA';
$_userdata[$name]['longname']='Peter der Große';

$name = "PAUL";
$table = "guestbook";
$_userdata[$name]['password']='08doof15';
$_userdata[$name]['rights'][$table]='RW';
$_userdata[$name]['longname']='Peter der Große';

usw...

Das hat den Vorteil, dass die Datenstruktur auch wachsen kann.
Um das Array zu speichern, musst Du es serialisieren.

Die Datei im a+ Modus öffnen und sperren, den Dateizeiger auf den Anfang zurückstellen, das Array auslesen (Datei vollständig einlesen) und deserialisieren, die Daten im Array updaten, Das Array wieder serialisieren, den Zeiger wieder auf 0 stellen, das Array wieder wegschreiben, die Datei nach der neuen Arraylange abschneiden (truncate()) und die Datei wieder schließen und damit entsperren.

Jeder Zugriff auf die Datei muss mit der Sperrlogik erfolgen, damit Du nicht aus Versehen in einem Script gerade liest, wenn ein anderes mittem im Schreiben ist und umgekehrt.

Liebe Grüße aus http://www.braunschweig.de

Tom

--
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen