Непонятки со скриптом статистики

babagun

Новичок
Непонятки со скриптом статистики

Вобщем проблемма такая: У меня на машине установлен денвер, написал значит я скриптик статистики, чтото типа: Вчера стокото, сегодня, всего и т.д. Вот сам скрипт :
PHP:
<?php
//Читаем в массив
//$count-счётчик сегодняшних посещений, $vcount-вчерашних, $allcount-Всего.
$file_array = file( "leftosnova/report" );
$count=($file_array[0]);
$vcount=$file_array[1];
$allcount=$file_array[2];
$curdate=date("d M Y");
$vdate=$file_array[4];
//Делаем переменные целыми (по другому не придумал, воспринимает строковыми.)
settype($count,"integer");
settype($vcount,"integer");
settype($allcount,"integer");
//проверяем дату и вводим поправки
if($vdate!=$curdate){
$vdate=$curdate;
$vcount=$count;
$count=0;
}
//увеличили на один
$count++;
$allcount++;
//Подготовка к записи
$str="$count\n$vcount\n$allcount\n$curdate\n$vdate";
//Запись
$file_hendle = fopen("leftosnova/report", "w");
fputs($file_hendle,$str);
fclose($file_hendle);
//Ну и выводим всё это куды нада...
?>
Так вот теперь сама проблемма: Загрузил скрипт на сайт http://onlyonline.h16.ru/ всё работает без проблем, а вот на моей машине с денвером данные как бы заморозились и никак не меняются, тоесть к примеру Вчера 4 Сегодня 10 всего 25. И в чём тут проблемма?
 

Фанат

oncle terrible
Команда форума
во-первых, слово "проблема" пишется с одной "м".
во-вторых, вываливать кучку кода и спрашивать, "в чём проблема", запрещено правилами форума.
тебе могут помочь самостоятельно найти ошибку, а вчитываться в кривой код тут никто не будет.

так что, отредактируй своё сообщение, чтобы в нём было не больше 10-15 строк кода, прочти вот этот текст PHP FAQ: Ничего не работает! Что делать??? и сделай то, что там написано

-~{}~ 08.06.06 09:30:

но код, действительно, забавный =)
$count=htmlspecialchars($file_array[0]);
не мог бы ты объяснить присутствие в этом месте функции htmlspecialchars?
Делаем переменные целыми (по другому не придумал, воспринимает строковыми.)
кто воспринимает? В чём это выражается?
 

babagun

Новичок
не мог бы ты объяснить присутствие в этом месте функции htmlspecialchars?
Уже убрал. Ну забыл я его убрать....
кто воспринимает? В чём это выражается?
Скрипт воспринимает. Когда я пытаюсь увеличить переменную ++ или любым другим способом, то он к этой переменной ничего не добавляет а оставляет её той же что и была. Можеш сам попробывать без этого преобразования тогда будет понятней.
Код не много сократил, но чтоб остался смысл больше не могу....

Самое интересное что те данные которые выдаются на локальной машине (с денвером) нигде, ни в одном скрипте не упоминаются. скажем так: У меня щас в файле "report" Такая запись:
5
8
11
07 Jun 2006
07 Jun 2006

А скрипт после выполнения ПОСТОЯННО показует

4
10
25

Где он берёт эти данные блин!!!!
 

Фанат

oncle terrible
Команда форума
Можеш сам попробывать без этого преобразования тогда будет понятней.
Я и пробовать не буду.
Прекрасно всё увеличивается и без преобразований. МожешЬ сам попробОвать, и убедиться.

-~{}~ 08.06.06 09:51:

Больше не у кого
Я правильно тебя понял, что ты у нас спрашиваешь, откуда берёт данные твой скрипт?
А спросить у нас, какие у тебя оценки в дневнике - такая замечательная идея тебе в голову не приходила?
 

babagun

Новичок
Блин... Ребят я нифига конечно не понял... Добавил в скрипт

ini_set('display_errors',1);
error_reporting(E_ALL);

И он заработал нормально, но 2 дня он выдавал одни и теже цифры!!!!!
В чём же может быть дело? Может кто встречался с таким?
Ну не могут же эти две строчки повлиять на выполнение скрипта!!!??? Они же несут в себе только информацию...
Во блин, хоть теперь всё и работает, а вопросов стало ещё больше.

-~{}~ 08.06.06 09:57:

Автор оригинала: Фанат
А спросить у нас, какие у тебя оценки в дневнике - такая замечательная идея тебе в голову не приходила?
Мне конечно стыдно, но о дневнике я забыл уже лет 15 назад. Так что может в этом и проблема, мозги с возрастом высохли :)

-~{}~ 08.06.06 10:01:

Автор оригинала: Фанат
Я и пробовать не буду.
Прекрасно всё увеличивается и без преобразований. МожешЬ сам попробОвать, и убедиться.
Я то пробывал и не один десяток раз, и дебагером прогонял и всё никак как было в переменной к примеру 1 так после наращивания 1 и осталось (Может у меня с денвером проблема?)... Пока не сделал явное преобразование.
 

babagun

Новичок
Автор оригинала: Navarro
http://ua2.php.net/manual/ru/function.file.php Читаем замечания
Вот нашёл там такие строки : "Каждый элемент возвращенного массива содержит соответствующую строку с символами конца строки"
Может изза этого символа вся проблема?

-~{}~ 08.06.06 10:09:

Всё понял, но только какая разница чем я буду преобразовывать rtrim() или settype().
 

Фанат

oncle terrible
Команда форума
никакой

-~{}~ 08.06.06 10:23:

мнда, я был неправ.
поскольку инкремент работает и со строками тоже, то автоматом он не приводит к числовому типу, как это сделал бы +, блин.
 
Сверху