hi, habe nun selbst mal ein problem, weiß allerdings nicht, ob der fehler bei mir, oder meinem provider liegt.
das problem:
habe ein php-script, daß pro eintrag 3 dateien erstellt und eine ändert. allerdings wird eine der dateien seltsamerweise manchmal leer oder überhaupt nicht erstellt, ich habe also entweder eine datei mit 0byte, oder sie fehlt komplett. seltsamerweise verändern sich auch ständig die attribute der dateien (rwx). fehlermeldung erscheint keine. erstellt werden die dateien über fopen ("$name","w+"), geschrieben mit fwrite und geschlossen natürlich mit fclose.
habe auch schon versucht über chmod jedes mal neu die rechte zu setzen, endet aber mit fehlermeldung: chmod not allowed.
komischerweise habe ich manchmal ein ähnliches problem bei ftp, daß mit kopierte dateien mit 0byte erstellt werden.
für tipps wär ich echt dankbar.
Homepage selbermachen 7.846 Themen, 35.563 Beiträge
Hmm, Dein Provider wird doch wohl nicht fünf Minuten zum Bearbeiten eines einfachen PHP-Skriptes brauchen? Ich habe mich nie darauf verlassen, daß PHP die Dateien ordentlich sperrt und freigibt, daher benutze ich immer den manuellen Befehl. Nach dem Öffnen sperre ich eine Datei komplett und vorm Schließen gebe ich die wieder frei. Nur in Ausnahmefällen setze ich eine Datei auf "read-only". Dumm ist nur, wenn zwei verschiedene Threads auf dieselbe Datei zugreifen. Dann funzt das nicht. Wenn Du also beispielsweise zwei Skripte hast, die gleichzeitig auf eine Datei zugreifen. "Systemweites-Locking" ist mir, außer bei DBs, noch nicht untergekommen. chmod funktioniert deshalb nicht, weil PHP wahrscheinlich im Webserver (Apache) läuft und der nur mit minimalen Rechten ausgestattet ist. chmod oder chown gehören definitiv nicht dazu.
> (ein guter grund daten in einer datenbank anzulegen, denn die
> kuemmert sich selbststaendig um die behandlung solcher probleme...)
Das geht aber nur, wenn "locking" vom OS unterstüzt wird und bei der Datenbank aktiviert ist ;)