This problem has been driving me insane. I have a little script that let's users enter data into a form, which then gets appended to a file (table) as a line (row). The adding part of the script works fine--and by remembering to add a "\n" at the end of each row, when the file (table) is read, PHP automagically figures out that each line is actually a row (thanks to the "\n"), and organizes the array accordingly (each line becoming an element in the array). The file thus displays fine. So far, so good.
The problem arrises when I try to update a row (line) in the table (file). The good: The line break character "\n" at the end of row being updated DOES get written properly. The bad: The line break characters for all the other rows of the table (which I'm not trying to update) disappear and/or CHANGE to a different, inscrutable character (square) when the whole array-turn-string gets written to the file. I realize this is confusing without the example code, so here it is... THE TABLE (FILE.DB) BEFORE THE UPDATE ======================================================================== 19 Oct 2001, 17:56|Movie|War and Peace|800||Ready|redoctober| 19 Oct 2001, 17:56|Movie|Hamlet|500||Ready|redoctober| 19 Oct 2001, 17:56|Movie|Les Miserables|600||Ready|redoctober| 19 Oct 2001, 17:57|Movie|Fahrenheit 451|||Ready|redoctober| ======================================================================== THE USER CHANGES HAMLET TO HENRY V, THEN CLICKS SUBMIT ======================================================================== 19 Oct 2001, 17:56|Movie|War and Peace|800||Ready|redoctober| 19 Oct 2001, 17:56|Movie|Henry V|500||Ready|redoctober| 19 Oct 2001, 17:56|Movie|Les Miserables|600||Ready|redoctober| 19 Oct 2001, 17:57|Movie|Fahrenheit 451|||Ready|redoctober| ======================================================================== Notice how the first two and last two lines, where there used to be a line break, now run together--and only the updated row/line has a line break at the end? WHY?!?!?!?!?!?! =:-(O) And here's my crappy-as-usual code that handles the new/update functions (thanks to everyone who have helped me get it to even this state): ======================================================================== if (isset($submit)) { if (isset($update)) { // UPDATE $affected0 = $started; $affected1 = $type; $affected2 = $title; $affected3 = $size; $affected4 = $res; $affected5 = $status; $affected6 = $by; $updatedstring = $affected0 . "|" . $affected1 . "|" . $affected2 . "|" . $affected3 . "|" . $affected4 . "|" . $affected5 . "|" . $affected6 . "|" . "\n"; $fcontents = file($name.".db"); $fcontents[$update] = $updatedstring; $fcontents_string = implode('', $fcontents); $fp = fopen($name.".db", "w+"); fwrite($fp,$fcontents_string); fclose($fp); } else { // ADD $fp = fopen($name.".db", "a"); $now = date("j M Y, H:i"); $by = $name; $common=$now . "|" . $type . "|" . $title . "|" . $size . "|" . $res . "|" . $status ."|". $by . "|" . "\n"; fwrite($fp,$common); // write to the file fclose($fp); // close the file } } ======================================================================== A million thanks if you can help me crush this bug! --- Rene Fournier [EMAIL PROTECTED] -- PHP General Mailing List (http://www.php.net/) To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]