Moin!
Jetzt dachte ich mir naja da die option "a" bei fopen den Zeiger ans Ende stellt müßte r+ den zeiger nach vorne Stellen!
Ok jetzt hab ich aber das Problem, dass er den davor gespeicherten Text überschreibt ... :-/
Logisch. Wenn du vorne etwas anfügen wolltest, müßte der Computer auf der Festplatte für jedes gespeicherte Byte die gesamte Datei genau ein Byte nach hinten schieben, damit neuer Platz entsteht - also wahnsinnig viel kopieren. Das macht er aber nicht.
Hinten anhängen ist dagegen ganz einfach: Datei öffnen, das Ende finden, und weiterschreiben.
Lösung: Wenn du in einer Datei vorne was davorhängen willst, mußt du die gesamte Datei einlesen, das gewünschte davorhängen und den eingelesenen Rest dahinterhängen. Wahlweise kannst du auch die bisherige Datei umbenennen, eine neue Datei mit dem alten Namen anlegen, zuerst das Neue reinschreiben und dann den Inhalt der umbenannten Datei auslesen und in die neue Datei schreiben. Am Ende löschst du die umbenannte Datei.
- Sven Rautenberg
Ja, aber wieso funktioniert die 2te Möglichkeit nicht? Ich speicher ja zuerst die die neue eingabe und sage $insgesammt = $neu . $alt und speicher es dann wieder in der Datei ab ... und was heißt das die komische Meldung mit der id1?