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

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

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

 Версия для печати • ПодписатьсяДобавить в закладки

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

TT34

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Такая ситуация: Пишет один гость. А если через пару минут на его сообщение отвечает другой гость, то вместо нового сообщения, в первом появляется строка
(добавлено тогда-то) и идет сообщение второго гостя.
 
То же самое происходит если постит подряд один и тот же пользователь. Как это можно блокировать?

Всего записей: 8 | Зарегистр. 17-11-2002 | Отправлено: 01:12 10-12-2002
lynx



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

Цитата:
То же самое происходит если постит подряд один и тот же пользователь. Как это можно блокировать?

 
Так це ж не баг, це ж фича!!
 
У тебя в post.cgi есть код:
 

Код:
 
# Склеивание постов
 
 
        $num = $totalthreadposts-1;
        ($inmembername_OLD, $topictitle_OLD, $postipaddress_OLD, $inshowemoticons_OLD, $inshowsignature_OLD, $currenttime_OLD, $inpost_OLD) = split (/\|/, $allmessages[$num]);
        chomp ($inpost_OLD);
 
 
        # Эти две строки отвечают за склеивание постов если новый пост не позднее 2х часов
        # Если хотите уменьшить время замените число 7200 на другое.
        # Если вы хотите отключить эту возможность закоментируйте две строки, и раскоментируйте третью  
               
        $timelimit = $currenttime - $currenttime_OLD;
        if ($inmembername_OLD eq $inmembername && $timelimit < 7200 && (!($inmembername eq "$ibtxt{'0043'}" && $inmembername_OLD eq "$ibtxt{'0043'}" && $postipaddress_OLD ne $postipaddress))) {
        #if ($inmembername_OLD eq $inmembername) {
         
         
        my $current_time = $currenttime + ($timedifferencevalue*3600) + ($timezone*3600);
        my $current_time = &dateformat("$currenttime");
         
        my $addon = "<p><br>\($ibtxt{'9989'}  $current_time.\)<p><br>";
         
       
        $inpost_OLD = $inpost_OLD . $addon . "$inpost\n";
         
        $currenttime = $currenttime_OLD;
         
        $postcountcheck = 0;
        foreach $postline (@allmessages) {
            chomp $postline;
                if ($postcountcheck eq $num) {
                    $processed_data .= "$inmembername_OLD|$topictitle_OLD|$postipaddress_OLD|$inshowemoticons_OLD|$inshowsignature_OLD|$currenttime_OLD|$inpost_OLD";
                }
                else { $processed_data .= "$postline\n"; }
                $postcountcheck++;
                }
            $filetoopen = "$ikondir" . "forum$inforum/$intopic.thd";
            open(FILE, ">$filetoopen");
             flock(FILE, 2);
            print FILE $processed_data;
            close(FILE);
            undef $processed_data;
           
             
         
        } else {
                 
        $filetomake = "$ikondir" . "forum$inforum/$intopic.thd";
        $filetomake = &stripMETA($filetomake);
        foreach $messages (@allmessages) {
            chomp $messages;
            $processed_data .= "$messages\n";
            }
        $processed_data .= "$inmembername|$topictitle|$postipaddress|$inshowemoticons|$inshowsignature|$currenttime|$inpost";
        open(FILE, ">$filetomake");
         flock(FILE, 2);
        print FILE $processed_data;
        close(FILE);
        undef $processed_data;
         
        $filetomake = "$ikondir" . "forum$inforum/lastpost.cgi";  
                $filetomake = ($filetomake);  
                open(FILE, ">$filetomake");  
                flock(FILE, 2);  
                print FILE "$inforum|$intopic|$topictitle";  
                close(FILE);  
         
        $numberofposts++; # плюс счетчик сюда впихиваем.
        $totalposts++;
        $addpost_ = 1;  
        }
 
 
 

 
То Димончик старался хак добавления писал, всем подарил, а ты снести хочешь.  
 
Ну, если хочешь, то сноси - убирай (или закомменти) этот код.
 
Но лучше убрать это только для Гостей. Или уменьшить время, после которого склейка происходит.

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 02:39 10-12-2002
TT34

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
В том-то и дело, что для гостей такое зотелось бы убрать.

Всего записей: 8 | Зарегистр. 17-11-2002 | Отправлено: 02:54 10-12-2002
lynx



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

Цитата:
В том-то и дело, что для гостей такое зотелось бы убрать.

 
В приведенном мной коде для гостей это и убрано, смотри:
 

Цитата:
 && (!($inmembername eq "$ibtxt{'0043'}" && $inmembername_OLD eq "$ibtxt{'0043'}" && $postipaddress_OLD ne $postipaddress

 
Можешь убрать, что красным, тогда при определении Гостя не будет учитываться IP.  

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 03:29 10-12-2002
TT34

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Спасибо. То что надо.

Всего записей: 8 | Зарегистр. 17-11-2002 | Отправлено: 00:26 11-12-2002
Открыть новую тему     Написать ответ в эту тему

Компьютерный форум 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