Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

php-радость

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Веб-программинг] >> php-радость
Имя
Сообщение << Старые топики   Новые топики >>
php-радость - 2004-11-30 00:20:38   
je0n

Сообщений: 126
Оценки: 0
Присоединился: 2004-07-05 23:40:07
Только что написал, свою первую полезную прогу на php!!! Счётчик посешений сайта. Выкладываю эту функцию, порадуйтесь со мной. Кстати: можете обсирать меня, на тему как можно было сделать лучше.


function counter($fn){

$boo=file_exists($fn);
if ($boo==1){
$siz=filesize($fn);
$f=fopen($fn,''r'');
if($siz==1){$c=fread($f,1);}
if($siz==2){$c=fread($f,2);}
if($siz==3){$c=fread($f,3);}
fclose($f);
$f=fopen($fn,''w'');
$c++;
fwrite($f,$c);
fclose($f);
}
else{
$f=fopen($fn,''w'');
fwrite($f,1);
fclose($f);
$c=1;
}
return $c;
}
Post #: 1
php-радость - 2004-12-05 21:06:53   
Roneon

Сообщений: 220
Оценки: 0
Присоединился: 2004-03-12 09:02:53
хм… можно было бы компактнее записать:
<?
$fn = "1.txt"; //определяем файл
counter($fn); //Вызываем функцию

function counter($fn){ //Начинаецца функция

if (file_exists($fn)){ //Проверка на наличие файла
$f=fopen($fn,'r'); //Открываем файл для чтения
$c = fread($f,filesize($fn)); //Читаем
fclose($f); //Закрываем файл
$f=fopen($fn,'w'); //Открываем файл для записи
$c++; //Добавляем 1
fwrite($f,$c); //Пишем это в файл
fclose($f); //Закрываем файл
}
else{ //А если файл не существует, то:
$f=fopen($fn,'w'); //Создаём файл (функцией для открытия) ;)
fwrite($f,1); //Пишем единицу
fclose($f); //Закрываем файл
$c=1; //Ну и функция возвращает единицу
}
return $c; //Возвращаем значение $c
}

?>

Ну и неплохо было бы куки прописывать… И ip записывать последний… чтоб нельзя было накрутить. ;)
Я бы такой счётчий не стал ставить себе на пагу, но как ученическая работа - норм. ;)
(хотя, может ли работающая ученическая работа не быть норм? ;) )
Post #: 2
php-радость - 2004-12-06 11:56:27   
phobos

Сообщений: 19
Оценки: 0
Присоединился: 2004-09-17 19:47:28
a ti ne dumal kak buet rabotat' takoi s4et4ik esli dva juzverja odnovremenno k failu obratjatsja…
et kone4no po teorii verojatnosti vrjadli…no 4em bol'she posetitelei tem pol'she verojatnost'.
esli uz 4erez file eto delaesh to prosto put' kazdii vhodjas4ii dobavljaet odin znak v fail ne 4itaja ego, a potom s4itivai skoko tama ih…

hotja vsjo eto metodi ves'ma somnitel'nie i ne profprigodnie [sm=5.gif]
Post #: 3
Страниц:  [1]
Все форумы >> [Веб-программинг] >> php-радость







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.