[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: вродебы простой счетчик
ashvin
Обычный код счетчика

PHP
<?php
$file
=fopen('file.txt','r');
$counter=fgets($file);
if(
$counter==null)
{
$counter=0;
++
$counter;
}
else
{
++
$counter;
}
fclose($file);
$file=fopen('file.txt','r+');
fwrite($file,$counter);
readfile ('file.txt');
fclose($file);


В локалке все работает. В нете нет.
В чем проблема непойму.



Спустя 13 минут, 9 секунд (20.09.2009 - 16:40) Guest написал(а):
не работает это понятние растяжимое, поэтому нужно подробнее писать
файл создан вообще?
и зачем его третий раз то открывать?
PHP
$counter intval(trim(file_get_contents('file.txt')));
file_put_contents('file.txt',++$counter);
print 
$counter;

Спустя 9 минут, 6 секунд (20.09.2009 - 16:50) ashvin написал(а):
спасибо твой код родошел.
Но я всетаки не могу понять почему мой не работает?

Спустя 18 минут, 54 секунды (20.09.2009 - 17:08) hara_ написал(а):
а файл file.txt создавал/менял/удалял при смене скриптов ?

Спустя 4 минуты, 15 секунд (20.09.2009 - 17:13) ashvin написал(а):
file.txt изначально был создан.

Спустя 21 минута, 22 секунды (20.09.2009 - 17:34) hara_ написал(а):
проверил, вобщем похоже на то что вы файл закачали из windows
а там переводы строк \r\n а в unix \n
так вот из за этого и косяк был (т.к. ваш код не создавал файл заново а тот который я привёл выше создаёт и ещё фильтрует входные данные)

и вообще всегда обрабатывайте данные которые получили, я имею ввиду
$counter = intval(trim(fgets(file)));

что делают trim и intval смотрите на php.net

PS если вы бы добавили в свой код trim то он бы работал
а сейчас он и так будет работать

Спустя 5 минут, 5 секунд (20.09.2009 - 17:39) ashvin написал(а):
Благодарю. А то гадал зачем Guest "trim" вставил.

Спустя 2 часа, 13 минут, 24 секунды (20.09.2009 - 19:53) ashvin написал(а):
Еще одно дополнение. Я когда скопировал fille.txt в католог(находящийся на 2 каталога ниже корневого) со скриптом в который добавил счетчик, то счетчик не работал.
Ваш код прописал fille.txt в корневой каталог(только сейчас заметил).
А все потому, что скрипт счетчика вызывается из индекс.рнр корневого.
А так как в моем скрипте не было создания файла(только "r+"), то и ...
Вот я ступил.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.