Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

помогите написать счетчи

5.2K
13 августа 2004 года
m77t87ty0870hyo
21 / / 18.07.2004
здраствуйте!
помогите написать счетчик посещений с указанием ip адреса комьютера и времени.
спасибо!
287
13 августа 2004 года
Shiizoo
958 / / 14.03.2004
Написать на чем?=))
5.2K
13 августа 2004 года
m77t87ty0870hyo
21 / / 18.07.2004
на чем лутше будет работать
287
13 августа 2004 года
Shiizoo
958 / / 14.03.2004
#!/usr/bin/perl -w

use strict;
use Fcntl ':flock';

$| = 1;

my $clicks;

&smth;

sub smth {

open(SEM,'>./sem');
flock(SEM,LOCK_EX);

my $ip = $ENV{REMOTE_ADDR};

if (open(SLOG,'./s_log')) {
while (<SLOG>) {
chomp $_;
(undef,$_) = split(" ",$_);
if ($_ eq $ip) {
return;
}
}
close SLOG;
}

if (open(STAT,'./c_num')) {
$clicks = <STAT>; chomp $clicks;
close STAT;
}

open(STAT,'>./c_num');
print STAT ++$clicks;
close STAT;

open(SLOG,'>>./s_log');
printf SLOG "%d %s \n", time(), $ip;
close SLOG;

##время *nix`овски (или макОС`ски), в секундах=)

close SEM;
}

##выводим на основе значения $clicks (количество кликов)

_END_


Эт на PERL`е. Сделаешь сам=) Впадлец.. Эт просто убогий примерчик наверстал.. Ну, работает, над ток либо пиксель выводить им, либо картинку какую-нить:)

А птом на страничке делаешь так: (или еще как).

=)
287
13 августа 2004 года
Shiizoo
958 / / 14.03.2004
Выдержка из сырцов, с тех ссылок: " $count=ereg_replace(" ","",$count); // Удаляем символ конца строки ...".

эт ты ему предлагаешь пользовать скрипты тех, кто \n[\r]`ы RE`шками удаляет???? =))) лол
5.2K
13 августа 2004 года
m77t87ty0870hyo
21 / / 18.07.2004
а на html можно счтото подобное написать?
4
13 августа 2004 года
mike
3.7K / / 01.10.2002
Цитата:
Originally posted by m77t87ty0870hyo
а на html можно счтото подобное написать?


нет

4
13 августа 2004 года
mike
3.7K / / 01.10.2002
Цитата:
Originally posted by Shiizoo
Выдержка из сырцов, с тех ссылок: " $count=ereg_replace(" ","",$count); // Удаляем символ конца строки ...".

эт ты ему предлагаешь пользовать скрипты тех, кто \n[\r]`ы RE`шками удаляет???? =))) лол



не суть

287
14 августа 2004 года
Shiizoo
958 / / 14.03.2004
Да лан Mike, эт я флужу:))))))

2m77t87ty0870hyo: А тебя я не понимаю) То говоришь на чем будет лучше работать, теперь те на html надо:))) Обясню такую ситуацию, для работы счетчика нужен язык, кторый может получить IP юзера, открыть файл, прочитать его и записать, и желательно чтобы был еще ЛОК файлов доступен. HTML - язык разметки, а не прикладного или какого-либо другого программирования, и эт не в его власти. Он служит для форматирования вывода, ну эт я это так называю. JS - эт тоже не могет (ну только на стороне клиента, и-то не все реализации), а CSS к этому вообще отношения не имеет) Значт тебе нужен PHP, PERL, ASP, CPP, JAVA или еще, что другое=) На мой взгляд, в рунете легче всего найти хостинг под первые 3. Из них первые два осваиваются легче всего. Если ты новичок - тебе больше подойдет PHP. CPP для такиех ерундовых задач юзать - глупо. ASP - зверь довольно редкий, хостинг с ним дороже, JAVA тож около того.

Ну, значит, иди в книжный, покупай "Учим PHP!", или как там книга будет называцца, и учи. За недельку освоишь (если поднапряжешься), и будешь сам на свой лад писать счетчики и т.п. Да, не забудь поковыряцца в манах по веб-серверам, таких как httpd, апач и т.п. (IIS не трогай:)))). Ну, всё, вперед и с песней=)
5.2K
14 августа 2004 года
m77t87ty0870hyo
21 / / 18.07.2004
а на narod.ru это будет работать?
287
14 августа 2004 года
Shiizoo
958 / / 14.03.2004
Если честно, никогда не пользовался=))))) Попробуй h1.ru или holm.ru, когда они только открылися я пробывал, правда мне не понравилось=))) На халяву ничег онормального никто тебе не даст:) Но все же там еще более менее терпимо) и работать там будет, и php и perl.. А вообще, купи хостинг нормальный:) ~80 баксов обойдецца, в год, это немного:)
5.2K
14 августа 2004 года
m77t87ty0870hyo
21 / / 18.07.2004
где потом смотреть ip usera? можно сделать чтобы ip высылались на мыло?
спасибо
287
14 августа 2004 года
Shiizoo
958 / / 14.03.2004
Сохранятюцца в файл=) дальше делай с ними, что хочешь) Высылать на мыло можно, но нужно юзать или либу, или mta, а так впадлу=) да и это не разумно.. ящик бут забит=) бредово:) лучше сделать навроде раздела под паролем, и фсе)
5.2K
14 августа 2004 года
m77t87ty0870hyo
21 / / 18.07.2004
в какой файл? и как поставить пароль на него и сделать отображение в виде html странички.
287
14 августа 2004 года
Shiizoo
958 / / 14.03.2004
s_log - сюда, первое число - время в секундах, второе эт ip.

#!/usr/bin/perl -w

use strict;
use Fcntl ':flock';
use CGI qw(param header);

$| = 1;

my $clicks;

&smth;

my ($login,$pass) = ('admin','123');

{
my $action = param('action') || '';

if ('history' eq lc($action)) {
my ($p_pass,$p_login) = (param('pass') || '',param('login') || '');
die '' unless ($p_pass eq $pass and $p_login eq $login);
&history;
} else {
&smth;
}
}

exit(0);

sub history {

open(SEM,'>./sem');
flock(SEM,LOCK_SH);

open(SLOG,'./s_log') || die '';

my @log;

while (<SLOG>) {
$log[@log] = {};
($log[@log-1]->{'time'},$log[@log-1]->{'host'}) = split(" ",$_);
}

close SLOG; close SEM;

print header(-type => 'text/html');

print <<"EOF";
<html>
<head><title>BZ</title>
<style type="text/css">
tr { vertical-align: top }
td { text-align: center; vertical-align: top; background-color: #f5f5f5 }
tr#head td { background-color: #e3e3e3 }
</style>
</head>

<body>
<table align="center" border="0" cellpadding="0" cellspacing="1" style="background-color: #c2c2c2;" width="90%">
<tr id="head"><td>Время визита</td><td>Хост юзера</td></tr>
EOF
for (@log) {
print '<tr><td>' . localtime($_->{time}) . '</td><td>' . $_->{host} . "</td></tr>\n";
}
print '</table></body></html>';
}

sub smth {

open(SEM,'>./sem');
flock(SEM,LOCK_EX);

my $ip = $ENV{REMOTE_ADDR};

if (open(SLOG,'./s_log')) {
while (<SLOG> ) {
chomp $_;
(undef,$_) = split(" ",$_);
if ($_ eq $ip) {
return;
}
}
close SLOG;
}

if (open(STAT,'./c_num')) {
$clicks = <STAT>; chomp $clicks;
close STAT;
}

open(STAT,'>./c_num');
print STAT ++$clicks;
close STAT;

open(SLOG,'>>./s_log');
printf SLOG "%d %s \n", time(), $ip;
close SLOG;

##время *nix`овски (или макОС`ски), в секундах=)

close SEM;
}

__END__

на... НО НЕ ЗАБУДЬ В КОНЦЕ КАРТИНКУ ВЫВОДИТЬ..=) хотя, можешь сделать ее в один пиксел, или вообще не видимой..=) ну дело твое.. терь в общем тебе нужна форма, тчобы входить в этот скрипт.. я не стал в него вкладывать..

должно быть три поля, одно невидимое..
login, pass и невидимое action. action для администрирования должен быть равен 'history', в любом регистре. ну а для засечения пользователя все так же. НО УЧТИ, этот скрипт два раза один и тот же ИП не запомнит, чтоб лишних накруток не было=) Если хочешь записывать каждое посещение - удали этот кусок:

if (open(SLOG,'./s_log')) {
while (<SLOG> ) {
chomp $_;
(undef,$_) = split(" ",$_);
if ($_ eq $ip) {
return;
}
}
close SLOG;
}

Ну, вроде все.. НЕ забываЙ, это всгео лишь на скорую руку сделаный пример:) Как только появица возможность - переделай.. :) Можешь отредактировать внешний вид вывода таблицы посещений.. Отбалды вырисовывал:) Все работаеТ, никаких запар.. Файлы сохраняются в ту же директорию, где лежит скрипт.. После их создания смени на них права.. Я всегда ставлю 700.. Как сменить надеюсь знаешь, ну, в факе на хостинге по-моему всегда пишут=) Все, буй..
5.2K
14 августа 2004 года
m77t87ty0870hyo
21 / / 18.07.2004
напиши пожалуста какие книге нужно прочитать для web програмирования.
СПАСИБО
287
14 августа 2004 года
Shiizoo
958 / / 14.03.2004
А я только две прочел, так что хз=)))))) Учился по манам, и учусь, и еще долго буду учицца=))))Сам вот рыскаю=))
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог