Gleichzeitiger Zugriff auf Textdatei

Taschkin

Mitglied
Hallo Tutorials-Mitglieder,

ich habe eine ziemlich allgemeine Frage.:confused:

Ich habe einen ganz simplen PHP-Script. Sobald dieser aufgerufen wird, wird eine Textdatei die eine Zahl enthält, geöffnet. Diese Zahl wird eingelesen um 1 hochgezählt und wieder neu abgespeichert in die Textdatei.

Diese Zahl soll eine eindeutige ID für jeden darstellen.

Meine Frage ist nun. Was genau passiert jetzt, wenn 3 Leute Gleichzeitig drauf zugreifen wollen ?

kommen die anderen 2 in eine Art warteschleife oder wird direkt ein Fehler ausgegeben, dass die Datei nicht geöffnet werden kann ?

Was wäre hier die beste Lösung ?

Ich bedanke mich schon mal für jeden Beitrag im vorraus. Danke ! :)
 
Also es handelt sich dabei um eine ID die dem User eindeutig zugewiesen sein muss. Dann kann ich dir gleich mal so viel verraten, dass es spätestens dann scheitert wenn ein zweiter User darauf zugegriffen hat bevor ein anderer User der die ID bereits hat abgespeichert hat. Ich weiß nicht wozu du das benötigst. Eventuell ist es hilfreich wenn du versuchst zu schildern was du eigentlich vor hast, dann können die anderen User die bestimmt einen Ratschlag geben wie du dein Vorhaben korrekt umsetzen kannst.

Freundliche Grüße
 
Klar kann ich dir sagen um was es geht. Ich mache eine Applikation indem man Folien selber zusammenstellen kann. Jede Zusammenstellung die gespeichert werden soll benötigt dabei eine eindeutige ID. So , dass der Kunde später dieses wieder aufrufen kann.
 
Also Im Prinzip langt ja das aus was ich vorher gesagt habe.

Ich habe schon befürchtet, dass bevor einer die Datei wieder schreibt ein anderer genau die gleiche ID wieder bekommt. Wie sieht es den in einer Datenbank aus ?
 
Da würde man für die ID einen KEY anlegen mit dem Attribut AUTO_INCREMENT ....fertig.
Bei Einfügeoperationen musst du dich um diese ID nicht kümmern, sie wird automatisch von der DB erzeugt und wird garantiert immer eindeutig sein.

Das mit den AUTO_INCREMENT kenn ich ja, wollte nicht wissen wie eine Datenbank funktioniert. Ausserdem ist das genau das was ich nicht brauche. Es soll nicht jedes mal ein Wert neu eingetragen werden sondern lediglich ein einziger Wert vorhanden sein, dieser Wert wird dann hochgezählt.

Aber ich denke mit einer DB wird das schon gehen, hoffe ich.
 
Zurück