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

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

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

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

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

Nazarius



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Я удалил как админ сообщение в одной теме, обновил страничку с темами и офигел - появилась новая тема без заголовка!!!  
Я ее даже вытереть не могу - не могу ее выбрать!!  
что делать, что за глюк?  
 


После удаления сообщения появляется новая пустая тема

 
Глюк наблюдается, если удалить последнее сообщение в теме, а потом добавить сообщение в ту же тему.
 
Фикс такой.
 
В файле postings.cgi в sub deletepost
 
Код:

Код:
 
           foreach $postline (@allthreads) {
          chomp $postline;
           unless ($postcountcheck eq $posttodelete) { $processed_data .= "$postline\n"; }
 
     
 
Заменить на:
 

Код:
 
           foreach $postline (@allthreads) {
           unless ($postcountcheck eq $posttodelete) { $processed_data .= "$postline";
           }
 

Всего записей: 107 | Зарегистр. 04-06-2003 | Отправлено: 17:22 27-06-2003 | Исправлено: lynx, 02:49 05-07-2003
lynx



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

Цитата:
Я удалил как админ сообщение в одной теме, обновил страничку с темами и офигел - появилась новая тема без заголовка!!!  
Я ее даже вытереть не могу - не могу ее выбрать!!  
что делать, что за глюк?  

 
Гм... Давай сначала, где ты брал дистрибутив и как его изменял после установки? Где-то  поле лишнее прописал.

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 19:17 27-06-2003
GOOSE



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
У меня вот как раз сегодня случилось что то подобное: открыл и увидел "лишний" топик, который не имел номера!!!!
Кинулся в админ центр, пересчитал форумы и сообщения с темами... нифига....
Закрыл окно, заново открыл и, о чудо! Все вернулось на круги своя
Видимо скриптина чудила, кинула лишнюю тему... Больше пока не повторялось.Nazarius
Ты ее и не вытрешь, ее же нет! (это если у тебя такой же как у меня глюк)
Либо что то лишнее приписал сам, когда устанавливал, как lynx сказала.


----------
AutoPlay Media Studio по-русски!
Русский хелп AutoPlay Media Studio

Всего записей: 903 | Зарегистр. 17-10-2001 | Отправлено: 00:46 30-06-2003
Marilda

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

Цитата:
Ты ее и не вытрешь, ее же нет! (это если у тебя такой же как у меня глюк)  

Можно вытереть. Посмотрите соответствующий list.cgi в Адиторе - там лишний перевод строки значит есть. Его и вытереть.  
 
Есть еще одна непонятка с удалением - pl обнуляется, а thd остается. Но это уже другая тема.

Всего записей: 381 | Зарегистр. 24-10-2002 | Отправлено: 02:37 30-06-2003 | Исправлено: Marilda, 02:41 30-06-2003
GOOSE



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Marilda
А не было ничего)))))))))))
Видимо, просто скрипт два раза отработал... Или еще что, я в программировании не силен.
Глюк был. Сейчас нет. Когда был глюк, я смотрел код получившейся страницы. Так вот, туда просто лишний раз вставлено было ПУСТОЕ место топика.

Всего записей: 903 | Зарегистр. 17-10-2001 | Отправлено: 16:50 30-06-2003
Nazarius



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Marilda
Я посмотрел и правда лишний перевод строки
Ты с этим сталкивался и как боролся, впадло постоянно ручками вытирать лишние символы (
Что надо в коде поменять?
 
Добавлено
lynx

Цитата:
Где-то  поле лишнее прописал.

да вроде нет Правда у меня базы с предыдущей версии ЫВ, может в новой что-то добавилось?
 
 
Добавлено
да, а если после удаления опять добавить сообщение, то лишний перевод исчезает!
 
 
Добавлено
foreach $newline (@alltopics) { #start foreach @threads
        chomp($newline);
            ($tempno, $trash) = split(/\|/,$newline);
            if ($intopic eq $tempno) {
            $processed_data .= "$topicid|$topictitle|$topicdescription|$threadstate|$threadposts|
$threadviews|$startedby|$startedpostdate|$postermembername2|$postdate2|$sticky\n";
            }
        else { $processed_data .= "$newline\n"; }
        }
 
а если сюда где-то всунуть chomp? то куда?
 
Добавлено
Нашел, что добавилась переменная sticky? Кто знает зачем она? Надо переформатировать все файлы list.cgi? А что будет если просто эту переменную удалить?

Всего записей: 107 | Зарегистр. 04-06-2003 | Отправлено: 11:47 01-07-2003 | Исправлено: Nazarius, 14:02 01-07-2003
Marilda

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Nazarius
Конкретно с этим не сталкивалась, но что-то подобное есть с удалением поста, остается лишний перевод строки с вытекающими последствиями. Можно плюнуть, потому что
Цитата:
да, а если после удаления опять добавить сообщение, то лишний перевод исчезает!  
. Но траблу надо начинать искать, мне кажется, в postings.cgi - он не до конца удаляет содержимое из thd.

Всего записей: 381 | Зарегистр. 24-10-2002 | Отправлено: 13:53 01-07-2003
Nazarius



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Я в postings.cgi добавил  chomp($sticky);
Вроде помогло.

Всего записей: 107 | Зарегистр. 04-06-2003 | Отправлено: 14:03 01-07-2003
lynx



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

Цитата:
Нашел, что добавилась переменная sticky? Кто знает зачем она? Надо переформатировать все файлы list.cgi? А что будет если просто эту переменную удалить?

 
Это переменная от хака стики-темы (поднятой темы). Стоит у тебя такой хак?
 

Цитата:
$processed_data .= "$topicid|$topictitle|$topicdescription|$threadstate|$threadposts|  
$threadviews|$startedby|$startedpostdate|$postermembername2|$postdate2|$sticky\n";  

 
Вот из-за этого перевода, видимо, траблы. Но тут правильно написано, перевод строки тут обязательно должен быть.
Это, видимо, подпрограмма deletepost?
 
Все верно, у меня такой же код.
 
 

Цитата:
Я в postings.cgi добавил  chomp($sticky);  
Вроде помогло.

 
Ну, и хорошо Хотя и странно. Мне кажется, ошибка в другом.
 
Дай всю свою подпрограмму deletepost.
 

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 16:40 01-07-2003
Nazarius



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
lynx
я тебе на мыло пошлю, если не против.
тама в конце файла я добавил лист.цгы может поможет

Всего записей: 107 | Зарегистр. 04-06-2003 | Отправлено: 16:55 01-07-2003
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Nazarius
 
Короче, все очень просто.
 
Просто в той строчке не должно быть этой переменной:
 

Код:
 
        $count++;
        } # end foreach
             
        ($topicid, $topictitle, $topicdescription, $threadstate, $threadposts ,$threadviews, $startedby, $startedpostdate, $lastposter, $lastpostdate, $sticky) = split(/\|/,$linetokeep);
 

 
 
Надо так:
 

Код:
 
            }
        $count++;
        } # end foreach
             
        ($topicid, $topictitle, $topicdescription, $threadstate, $threadposts ,$threadviews, $startedby, $startedpostdate, $lastposter, $lastpostdate) = split(/\|/,$linetokeep);
 

 
 
 
 
Добавлено
Хотя.. я сейчас подумала, что это не должно быть важно...
 
Добавлено
Но все-таки попробуй

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 19:11 01-07-2003
Nazarius



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

Цитата:
Просто в той строчке не должно быть этой переменной

Это ты про то, что в моих старых базах нет такой переменной?
Но ведь после обработки она добавляется.
ее же читать надо

Всего записей: 107 | Зарегистр. 04-06-2003 | Отправлено: 11:17 02-07-2003
lynx



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

Цитата:
Но ведь после обработки она добавляется.  

 
Да, мне тоже странно. В целом код у тебя как раз такой, как должен быть, у меня такой же, почему у тебя надо писать chomp($sticky) не могу понять.
 
Ладно, работает и хорошо

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 17:43 02-07-2003
GOOSE



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Так, господа...
Я, по видимому, накаркал.
Сегодня удалил одно сообщениев топике, перешел к форуму и увидел ниже того топа, в котором удалял сообщение, пустой топик!
 он никак не хочет пропадать
Придется искать, где собака порылась...
буду признателен, если кто подскажет.
ЗЫ Дистрибутив с Ру-Борда, установлен хак "привязки" темы и еще по мелочи кое что.

----------
AutoPlay Media Studio по-русски!
Русский хелп AutoPlay Media Studio

Всего записей: 903 | Зарегистр. 17-10-2001 | Отправлено: 21:45 02-07-2003
Xnom



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
GOOSE
Мне на мыло (в профиле указано) вышли свой postings.cgi

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

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

Цитата:
Сегодня удалил одно сообщениев топике, перешел к форуму и увидел ниже того топа, в котором удалял сообщение, пустой топик!

Пока результаты удаления свежие, гляньте, как выглядят соответствующие удаленной теме файлы pl и thd. Каков их размер? Если pl не нулевого размера, то что внутри него?
 
 
Добавлено
Sorry, не то я подумала. То есть, удален пост (часом не последний на тот момент?), и вскоре появляется пустой топик? Его номер определяется? Посмотрите в соотв. папке forumN - какие файлы pl, thd этому номеру соответствуют?  
 
Xnom
Что после удаления последнего поста в топике остается лишний перевод строки - медицинский факт. Посмотри на этот предмет postings.cgi, результаты исследования будь добр не скрой  
А вот как пересчет топиков новый топ образует? Может, где-то генерится лишняя pl-ка? (Такое вообще бывает, но если pl-ки нулевые, то в list.cgi не должны попадать)

Всего записей: 381 | Зарегистр. 24-10-2002 | Отправлено: 00:25 03-07-2003 | Исправлено: Marilda, 00:44 03-07-2003
Xnom



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Marilda
оба вопроса принял :)
 
GOOSE
мне ещё нужен твой ikon.lib

Всего записей: 778 | Зарегистр. 09-10-2002 | Отправлено: 00:53 03-07-2003
GOOSE



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Xnom
ОК! Посылаю... оба файла...
Marilda
Именно, последний пост!
Но вот непонятно, создается то новый ТОПИК! При этом он без номера...
Висит до сих пор тут. Простите, но это не реклама

Всего записей: 903 | Зарегистр. 17-10-2001 | Отправлено: 16:13 03-07-2003 | Исправлено: GOOSE, 17:01 03-07-2003
lynx



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

Цитата:
Что после удаления последнего поста в топике остается лишний перевод строки - медицинский факт.  

 
Ты права, старушка (сори за фамильярность), не заметила бы без тебя.
 
Попробуйте так.
 
postings.cgi
sub deletepost
 
Код:

Код:
 
           foreach $postline (@allthreads) {
          chomp $postline;
           unless ($postcountcheck eq $posttodelete) { $processed_data .= "$postline\n"; }
 
     
 
Заменить на:

Код:
 
           foreach $postline (@allthreads) {
           unless ($postcountcheck eq $posttodelete) { $processed_data .= "$postline";
           }
 

 
Потестила на локалхосте, вроде ОК, потестите еще.

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 21:37 03-07-2003
Xnom



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

Цитата:
потестите еще.

потестил, всё в норме :)
 
 
я тут стандартные скрипты по этому поводу потестил. всё ОК.  пробовал удалять и последнее сообщение и остальные :) каких-либо отклонений не замечано.

Всего записей: 778 | Зарегистр. 09-10-2002 | Отправлено: 19:59 04-07-2003
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2

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