(Hallo|Hi(ho)|Tag) Fabienne,
habe ein Problem auf einer Windows-Maschine:
Ich möchte in eine Datei (Pfad passt) etwas hineinschreiben:
$data = fopen($path_to_files."log.txt","w+");
flock($data,LOCK_SH);
$search_log="Bla";
fwrite($data, $search_log);
flock($data,LOCK_UN);
fclose($data);Jedoch die Datei wird jedesmal nur geleert (also Inhalt gelöscht, = w+). Neuer Inhalt wird nicht geschrieben.
Der Inhalt von $search_log lässt sich mit var_dump() ausgeben. Diese
Variable könnte bspw. die Werte FALSE, NULL oder '' enthalten oder gar
nicht definiert sein (Tippfehler).
Außerdem lohnt es sich, den Rückgabewert von fwrite() mit var_dump() zu überprüfen.
Der enthält im Erfolgsfall die Zahl der geschriebenen Bytes, im Fehlerfall ist er FALSE.
An den Anfang des Scripts gehört ein
error_reporting(E_ALL);
Das zeigt Warnungen, die sonst möglicherweise unterdrückt worden sind.
Wenn du in die Datei schreiben willst, solltest du flock() mit LOCK_EX ("exclusive" == "ausschließlich") benutzen.
Wenn du LOCK_SH ("shared" == "gemeinsam genutzt") nimmst, könnte jede Instanz dieses Scripts in die Datei schreiben. Das gäbe ein ziemliches Durcheinander.
MffG
EisFuX