Вы используете устаревший браузер. Этот и другие сайты могут отображаться в нём некорректно. Вам необходимо обновить браузер или попробовать использовать другой.
т.е. в кэше сохраняется размер файла $sys_dir.$f_check_sum в 0 байтов, а при последующей попытке чтения размера $old_all_size=fread($fp, filesize($sys_dir.$f_check_sum)); у тебя соответсвенно из файла читается 0 байтов.
Сам недавно на такой прикол натолкнулся... чуть с ума не сошол. "Спасибо" переводчикам мануала php3 на русский язык. Только оригинал мана php4 и помог...
to Кирс
Во !!!!! МОЛОТОК. 5 Баллов и банку соленых огурцов в плечи. Сенкс. Работает.
С первым разобрались.
А на счет второго. Это всё понятно, что сначала пишется в файл "1", а потом уже проходит первая проверка размера файла, равная 1-му байтуно. Я про то, что если ты заметил, там указатель закрываеться после записи а перед первой проверкой не открываеться и всё работает. Вот где прикол.
PS
А Ромик мне с самого начала говорил про clearstatcache(), а я млин. Я его не туды сувал. Куды надо было. И где же ты рань был А Кирс ?
Ну всё !!!!!!! Понял на конец таки, в чем тут дело. Чуть мозг не вывехнул.
Если кому интерестно. см ниже.
Как уже писал Кирс --- Во втором случае работет потому, что сначала пишется в файл "1", -- потом закрываеться указатель. выходим из первого if. (А вот и сама фишка). Вторая проверка срабатывает,
ничего не считываеться и именно из-за того, что закрыт указатель. И скрипт входит в if. Ну а дальше уже создаём указатель и намана читаем данные.
PS
Вот такие вот батоны.