Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » IkonBoard и другие форумы » Ikonboard v.2 » Глюк с гостями: больше одного не показывает

Модерирует : Antuan

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8

Открыть новую тему     Написать ответ в эту тему

Fuchsia



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alexander Ipp
Заменила код на новый. Что делает форум. Пока не сотрешь файл онлайндата, все по-прежнему. Как только я его удаляю, форум показывает меня-страшного юзверя, но... Как только я выхожу из форума и захожу как гость, он меня уже как гостя в упор не видит.
Так и тянется ручка нарисовать кучу рыдающих смайликов...

Всего записей: 285 | Зарегистр. 16-02-2002 | Отправлено: 12:33 22-06-2002
Jovani



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alexander Ipp
Я твой последний код поставил - два часа полёт нормальный, пока глюков нет.

Всего записей: 205 | Зарегистр. 23-07-2001 | Отправлено: 16:33 22-06-2002
Alexander Ipp



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Пробуй заменить код который в этой подпрограмме на вот такой:

Код:
 
                    unless ("$userexpire" > "$savedtime") {
  if ($savedusername ne "Guest" && $tempusername ne "Guest") {  
                      if ("$savedusername" ne "$tempusername") { print FILE "$line\n"; }
                      else { print FILE "$tempusername|$currenttime|$where|$ipaddresstowo\n"; $memberprinted = "yes";}
  } else {
                      if ("$savedip" ne "$ipaddresstowo") { print FILE "$line\n"; }
                      else { print FILE "$tempusername|$currenttime|$where|$ipaddresstowo\n"; $memberprinted = "yes";}    
  }
                    }
 

М.б. так заработает.
Хотя кажется я всё догнал...

Всего записей: 1943 | Зарегистр. 20-08-2001 | Отправлено: 20:02 22-06-2002
durachka



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alexander Ipp, спасибо, все работает кк часы . Так давно эта проблема была, и вот наконец-то решение .

Всего записей: 596 | Зарегистр. 20-05-2001 | Отправлено: 22:11 22-06-2002
Fuchsia



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alexander Ipp
Заменила кусок, теперь работает. Спасибо
Правда, появилась одна незначительная странность (теперь показывает, кто в данный момент находится на форуме, а не за последние "*" минут, стоит выйти и зайти гостем, как уже и не видно, был ли юзер здесь), так что, буду жить в реальном времени.
 

Всего записей: 285 | Зарегистр. 16-02-2002 | Отправлено: 23:48 22-06-2002
Alexander Ipp



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Fuchsia
Хм, опять не ладно...
Короче, накосячил я там имхо капитально. Завтра буду опять ковырять... Кажется я всё понял.
 
Добавлено
Так, пробуем:

Код:
 
sub whosonline {
    local($instruct) = @_;
    ($tempusername, $where, $method) = split(/\|/, $instruct);
 
    $guests = 0;
    $members = 0;
    $currenttime = time;
### Если новая версия, с данной строкой поступаем как обычно. lol
    $membergone = 15;
    $userexpire = $currenttime - ($membergone * 60);
     
    $ipaddresstowo = $ENV{'REMOTE_ADDR'};
#$ipaddresstowo = "786.345.785.12";

######## Stats hack
        #$logname = $tempusername;
########
    &getmember("$inmembername");
    if ($tempusername eq "Guest" || $userregistered eq "no") { $tempusername = "Guest"; }  
     
        $filetoopen = "$ikondir" . "data/onlinedata.dat";
        $filetoopen = &stripMETA($filetoopen);
        open(FILE,"$filetoopen");
        #flock(FILE, 1);
        @onlinedata = <FILE>;
        close(FILE);
             
        open(FILE,">$filetoopen");
        #flock(FILE, 2);
        $memberprinted = "no";
        foreach $line (@onlinedata) {
                chomp $line;
                ($savedusername, $savedtime, $savedwhere, $savedip) = split(/\|/, $line);
                $savedusername =~ s/ /_/g;
                $tempusername =~ s/ /_/g;
                #$savedusername = &unHTML($savedusername);
                #$tempusername  = &unHTML($tempusername);
                    unless ("$userexpire" > "$savedtime") {
  if ($tempusername eq $savedusername) {
   if ($savedusername eq "Guest" && $savedip eq $ipaddresstowo) {
  print FILE "$tempusername|$currenttime|$where|$ipaddresstowo\n";
$memberprinted = "yes";
}
 elsif ($savedusername eq "Guest" && $savedip ne $ipaddresstowo) {
  print FILE "$line\n";
}
 elsif ($savedusername ne "Guest") {  
  print FILE "$tempusername|$currenttime|$where|$ipaddresstowo\n";
$memberprinted = "yes";  
}
  } else { print FILE "$line\n"; }
                    }
                } # end foreach
        if ($memberprinted eq "no") { print FILE "$tempusername|$currenttime|$where|$ipaddresstowo\n";}
        close(FILE);
####### Stats hack
            #$referer = $ENV{'HTTP_REFERER'};
            #$browser = $ENV{'HTTP_USER_AGENT'};
            #$media = $ENV{'HTTP_ACCEPT'};
            #
            #open(LOGFILE, ">>$ikondir/data/stats.log");
            ##flock(FILE, 2);
            #print LOGFILE "$logname|$currenttime|$where|$referer|$ipaddress|$browser\n";
            #close(LOGFILE);
#######
        if ($method eq "$ibtxt{'0016'}") {
         
            $filetoopen = "$ikondir" . "data/onlinedata.dat";
            $filetoopen = &stripMETA($filetoopen);
            open(FILE,"$filetoopen");
            @onlinedata = <FILE>;
            close(FILE);
            foreach $line (@onlinedata) {
                chomp $line;
                ($savedusername, $savedtime, $savedwhere, $savedipadr) = split(/\|/, $line);
                $lookfor = substr($savedusername, 0, 5);
                if ($lookfor eq "$ibtxt{'0043'}") { $guests++; }
                else {
                $members++;
                $cleanmember = $savedusername;
                $cleanmember =~ s/ /\_/g;
                $savedusername = substr($savedusername,0,20) if length $savedusername > 19;
                $memberoutput .= qq~&raquo; <a href="$profileprog?action=show&member=$cleanmember">$savedusername </a>~;
                }
            }
        }
} # end routine
 

ПОтестил - вроде всё в полном ажуре...

Цитата:
Незарегистрированных: 8, зарегистрированных: 2 (Рекорд: 10, установлен 2:18 24-6-2002)

Пробуйте...

Всего записей: 1943 | Зарегистр. 20-08-2001 | Отправлено: 19:25 23-06-2002
Fuchsia



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alexander Ipp

Цитата:
ПОтестил - вроде всё в полном ажуре...  

Уррра! Заработало!!!
 
Спасибище тебе огромное, а то крыша моя уже грозилась отъехать

Всего записей: 285 | Зарегистр. 16-02-2002 | Отправлено: 06:33 24-06-2002
Alexander Ipp



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ну всё, ништяк. Извиняюсь за тО. что заставил долго ждать...
На РУ.борд что ли статью выкинуть?

Всего записей: 1943 | Зарегистр. 20-08-2001 | Отправлено: 11:02 24-06-2002
Fuchsia



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alexander Ipp, ты такое огромное дело сделал, и еще извиняешься? Если бы не ты, то и сидели бы такие, как я, с одним гостем. А так заходишь на форум, душа радуется, глядя, сколько народу там пасется

Всего записей: 285 | Зарегистр. 16-02-2002 | Отправлено: 11:06 24-06-2002
Grey2002



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Alexander Ipp
можно маленький оффтоп как раз про это :

Цитата:
Незарегистрированных: 8, зарегистрированных: 2 (Рекорд: 10, установлен 2:18 24-6-2002)  

такое есть или сам писал? если сам, поделись, плиз...

----------
Мой Блог

Всего записей: 1325 | Зарегистр. 24-12-2001 | Отправлено: 12:01 24-06-2002
Alexander Ipp



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Fuchsia
Да ладно уж, чего там... Кто-то же должен был пофиксить.
Grey2002
Сам писал. Где-то на ибхакерсе хак такой был, но из-за такой мелочиидти даже было лень туда.
Поищи, сейчас выкладывать некогда. Если не найдёшь - я выложу, фича мелкая и простая.

Всего записей: 1943 | Зарегистр. 20-08-2001 | Отправлено: 18:51 24-06-2002
Grey2002



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Alexander Ipp
а как он примерно называется? сорри, не нашёл...

----------
Мой Блог

Всего записей: 1325 | Зарегистр. 24-12-2001 | Отправлено: 04:33 25-06-2002
Alexander Ipp



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Grey2002
А ХЗ. ЧТо-то с record...

Всего записей: 1943 | Зарегистр. 20-08-2001 | Отправлено: 19:16 25-06-2002
Shurik



Главком. флейма
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Grey2002

Цитата:
такое есть или сам писал? если сам, поделись, плиз...
да небось отдельный маленький файлик - там че-нить типо такого:
data|unreg|reg
и потом сверяем скока сейчас в сумме с тем, скока было (тащим анрегов и регов из того файла)...
data - число - время рекорда.
короче, все просто.


----------
Metal Bands...

Всего записей: 3171 | Зарегистр. 11-06-2001 | Отправлено: 13:52 26-06-2002
Alexander Ipp



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Shurik
Нет, только дата и кол-во. Ладно, потом дам вам всем, сейчас очень тороплюсь.

Всего записей: 1943 | Зарегистр. 20-08-2001 | Отправлено: 19:53 26-06-2002
Grey2002



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Alexander Ipp

Цитата:
Ладно, потом дам вам всем, сейчас очень тороплюсь

ок, ждём-с спасибо заранее
Shurik

Цитата:
короче, все просто

я принцип то и так допёр,.. только вот я перла не знаю...

----------
Мой Блог

Всего записей: 1325 | Зарегистр. 24-12-2001 | Отправлено: 02:30 27-06-2002
Shurik



Главком. флейма
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Alexander Ipp

Цитата:
Нет, только дата и кол-во.  
а точно!.. ударяя себя по голове
я просто думал у тебя еще выводится максимальное кол-во анрегов и регистренных...
да простой хак.

----------
Metal Bands...

Всего записей: 3171 | Зарегистр. 11-06-2001 | Отправлено: 11:21 27-06-2002
Marilda

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
All
Значит, решение найдено и заключается оно в замене sub whosonline {...} в icon.lib на представленный здесь  
http://forum.ru-board.com/topic.cgi?forum=21&topic=0968&start=100#6
и правках во whosonline.cgi, описанных в  
http://forum.ru-board.com/topic.cgi?forum=21&topic=0968&start=60#18
 
Спасибо. Буду делать.
 
Вопросик.

Цитата:
Если будете заливать насерв, не забудьте раскомментить flock'и в вышеприведённом куске кода.

Объясните, пожалуйста, что именно раскомментить в куске кода (первая ссылка).

Всего записей: 381 | Зарегистр. 24-10-2002 | Отправлено: 17:48 02-03-2003
Xnom



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Marilda

Цитата:
Объясните, пожалуйста, что именно раскомментить в куске кода (первая ссылка).

поменяй все #flock на flock
убери строку

Код:
$membergone = 15;



----------
Китайцы будут атаковать маленькими мобильными группами по 10 млн. человек в каждой....

Всего записей: 778 | Зарегистр. 09-10-2002 | Отправлено: 22:25 02-03-2003
Marilda

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Xnom
Уже догнала, на две минуты ты меня опередил Эх, плохо быть чайником
А $membergone = 15; разве надо убирать? У меня вроде не через АЦ 15 устанавливается.

Всего записей: 381 | Зарегистр. 24-10-2002 | Отправлено: 22:30 02-03-2003
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8

Компьютерный форум Ru.Board » IkonBoard и другие форумы » Ikonboard v.2 » Глюк с гостями: больше одного не показывает


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru