|
|
Без описания |
Поиск в теме | Версия для печати |
alexx |
Отправлено: 11 марта 2011 — 01:00
|
Advanced Member
Покинул форум
Сообщений всего: 495
Дата рег-ции: Февр. 2010
Откуда: Россия
Репутация: 12
|
yura3d пишет:Опишите, когда именно возникают проблемы (при переносе в новую или существующую тему, в разных ли разделах при этом размещаются тема-источник и тема-приёмник и т.д.) Приведите все ошибки или выводимые сообщения, которые появляются при возникновении проблемы
Переносил 12 постов в два захода ( так как на разных страницах ветки были) в новую тему и в другой раздел форума (в первом посте картинка осталась, в других полетели).
Переносил из этой в эту (кроме первого поста картинки заново прикрепил).
Высветились пару ошибок и исчезли быстро , скопировать не удалось.
Попробую воспроизвести ошибку и скопировать. Скрытый текст:Для просмотра Вам необходимо авторизоваться и оставить не менее 10 сообщений
(Добавление)
У меня стоят «Права на загружаемые и создаваемые не PHP файлы 0666»
Может в этом дело?
Права на создаваемые файлы 0777
Права на создаваемые папки 0777(Отредактировано автором: 11 марта 2011 — 01:04) |
|
|
yura3d |
Отправлено: 12 марта 2011 — 01:40
|
ExBB Team ExBB Developer ExBB Mods Author
Покинул форум
Сообщений всего: 3394
Дата рег-ции: Февр. 2009
Откуда: Минск, Беларусь
Репутация: 353
|
Описанное далее исправление решает 3 проблемы:- пропажа прикреплённых файлов при переносе сообщений в существующую тему;
- изменение даты и времени у переносимых в существующую тему сообщений;
- при переносе сообщений в существующую тему теперь правильно указывается название этой темы.
Откройте файл postings.php, найдите строку:
CODE: if (count($attaches) !== 0) UpdateAttaches($newtopic,$attaches);
Искомая строка встречается в данном файле 2 раза, Вам необходимо запомнить номер строки при второй встрече.
Далее в этом же файле найдите строку:
CODE: $newlastposter = GetName($newtopic[$newlastkey]['p_id']);
Выделите все строки, заключённые между найденными строками (включая найденные). Полученный таким образом фрагмент кода нужно будет заменить на один из следующих:Если у Вас установлен мод "Поиск тем и сообщений пользователя" (Отобразить)CODE: /* РАЗБИРАЕМСЯ С АТТАЧАМИ ЕСЛИ КОЛ-ВО АТТАЧЕЙ БОЛЬШЕ 0 */
if (count($attaches) !== 0) UpdateAttaches($tmp_newtopic,$attaches);
$newtopic = $fm->_Read2Write($fp_newtopic, 'forum'.$toforum_id.'/'.$newtopic_id.'-thd.php');
$oldfirstkey = key($newtopic);
$newUsers = array();
foreach ($tmp_newtopic as $post_id => $postinfo) {
while (isset($newtopic[$post_id])) {
$post_id++;
}
$newtopic[$post_id] = $postinfo;
$newUsers[$postinfo['p_id']][] = $post_id;
}
unset($tmp_newtopic);
ksort($newtopic);
$newfirstkey = key($newtopic);
if ($oldfirstkey != $newfirstkey) {
$newtopic[$newfirstkey] += array(
'name' => $newtopic[$oldfirstkey]['name'],
'desc' => $newtopic[$oldfirstkey]['desc'],
'state' => $newtopic[$oldfirstkey]['state'],
'pinned' => $newtopic[$oldfirstkey]['pinned']
);
unset($newtopic[$oldfirstkey]['name'], $newtopic[$oldfirstkey]['desc'], $newtopic[$oldfirstkey]['state'],
$newtopic[$oldfirstkey]['pinned']);
if (isset($newtopic[$oldfirstkey]['views'])) {
$newtopic[$newfirstkey]['views'] = $newtopic[$oldfirstkey]['views'];
unset($newtopic[$oldfirstkey]['views']);
}
if (isset($newtopic[$oldfirstkey]['pinmsg'])) {
$newtopic[$newfirstkey]['pinmsg'] = $newtopic[$oldfirstkey]['pinmsg'];
unset($newtopic[$oldfirstkey]['pinmsg']);
}
}
end($newtopic);
$newlastkey = key($newtopic);
$fm->_Write($fp_newtopic,$newtopic);
include('modules/belong/_inExists.php');
$newauthor = GetName($newtopic[$newfirstkey]['p_id']);
$newlastposter = GetName($newtopic[$newlastkey]['p_id']); Если данный мод не установлен (Отобразить)CODE: /* РАЗБИРАЕМСЯ С АТТАЧАМИ ЕСЛИ КОЛ-ВО АТТАЧЕЙ БОЛЬШЕ 0 */
if (count($attaches) !== 0) UpdateAttaches($tmp_newtopic,$attaches);
$newtopic = $fm->_Read2Write($fp_newtopic, 'forum'.$toforum_id.'/'.$newtopic_id.'-thd.php');
$oldfirstkey = key($newtopic);
foreach ($tmp_newtopic as $post_id => $postinfo) {
while (isset($newtopic[$post_id])) {
$post_id++;
}
$newtopic[$post_id] = $postinfo;
}
unset($tmp_newtopic);
ksort($newtopic);
$newfirstkey = key($newtopic);
if ($oldfirstkey != $newfirstkey) {
$newtopic[$newfirstkey] += array(
'name' => $newtopic[$oldfirstkey]['name'],
'desc' => $newtopic[$oldfirstkey]['desc'],
'state' => $newtopic[$oldfirstkey]['state'],
'pinned' => $newtopic[$oldfirstkey]['pinned']
);
unset($newtopic[$oldfirstkey]['name'], $newtopic[$oldfirstkey]['desc'], $newtopic[$oldfirstkey]['state'],
$newtopic[$oldfirstkey]['pinned']);
if (isset($newtopic[$oldfirstkey]['views'])) {
$newtopic[$newfirstkey]['views'] = $newtopic[$oldfirstkey]['views'];
unset($newtopic[$oldfirstkey]['views']);
}
if (isset($newtopic[$oldfirstkey]['pinmsg'])) {
$newtopic[$newfirstkey]['pinmsg'] = $newtopic[$oldfirstkey]['pinmsg'];
unset($newtopic[$oldfirstkey]['pinmsg']);
}
}
end($newtopic);
$newlastkey = key($newtopic);
$fm->_Write($fp_newtopic,$newtopic);
$newauthor = GetName($newtopic[$newfirstkey]['p_id']);
$newlastposter = GetName($newtopic[$newlastkey]['p_id']); Далее в этом же файле найдите строку:
CODE: $newlist[$newtopic_id]['postkey'] = $newlastkey;
и над ней вставьте строки:
CODE: $newlist[$newtopic_id]['author'] = $newauthor;
$newlist[$newtopic_id]['a_id'] = $newtopic[$newfirstkey]['p_id'];
$newlist[$newtopic_id]['date'] = $newfirstkey;
Затем найдите строку:
CODE: $topicname = (isset($newlist[$newlasttopic]['tnun'])) ? $newlist[$newlasttopic]['name'].' - '.$newlist[$newlasttopic]['tnun']:$newlist[$newlasttopic]['name'];
и замените её строкой:
CODE: $topicname = (isset($newlist[$newtopic_id]['tnun'])) ? $newlist[$newtopic_id]['name'].' - '.$newlist[$newtopic_id]['tnun']:$newlist[$newtopic_id]['name'];
Чуть ниже найдите строку:
CODE: $list[$newtopic_id]['postkey'] = $newlastkey;
и над ней вставьте строки:
CODE: $list[$newtopic_id]['author'] = $newauthor;
$list[$newtopic_id]['a_id'] = $newtopic[$newfirstkey]['p_id'];
$list[$newtopic_id]['date'] = $newfirstkey;
Теперь найдите строку:
CODE: $fm->_Message($fm->LANG['MoveSelectedInExists'], sprintf($fm->LANG['MoveInExistsOk'],$topicname), 'topic.php?forum='.$toforum_id.'&topic='.$newtopic_id.'postid='.$newlastkey.'#'.$newlastkey);
и замените её строкой:
CODE: $fm->_Message($fm->LANG['MoveSelectedInExists'], sprintf($fm->LANG['MoveInExistsOk'],$topicname), 'topic.php?forum='.$toforum_id.'&topic='.$newtopic_id.'postid='.$post_id.'#'.$post_id);
Наконец, найдите строку:
CODE: echo '<b>['.$topic_id.'-'.$newtopic_id.']</b>';
и (если таковая у Вас имеется) удалите её.
Останется только закачать исправленные файлы мода Поиск тем и сообщений пользователя (если он у Вас установлен) из прикреплённого архива в папку мода modules/belong/
О результатах работы этого исправления сообщайте, пожалуйста, в этой теме. Сейчас стоит вопрос о включении данного исправления в готовящийся релиз ExBB FM 1.0 RC2, поэтому Ваши отчёты о работе данного исправления крайне важны!!
З.Ы. По поводу пропажи прикреплённых файлов при перемещении сообщений в новую тему, а не существующую: мне повторить эту проблему на локалке не удалось. Если кто-либо составит подробный отчёт по проблеме (предшествующие проблеме действия, список сообщений о возникающих ошибках), то решение проблемы (если она вообще существует) заметно ускорится
|
|
|
alexx |
Отправлено: 12 марта 2011 — 19:51
|
Advanced Member
Покинул форум
Сообщений всего: 495
Дата рег-ции: Февр. 2010
Откуда: Россия
Репутация: 12
|
yura3d пишет:О результатах работы этого исправления сообщайте, пожалуйста, в этой теме. Сейчас стоит вопрос о включении данного исправления в готовящийся релиз ExBB FM 1.0 RC2, поэтому Ваши отчёты о работе данного исправления крайне важны!!
Переношу посты в новую тему, а пишет в шапке : Выделение выбранных сообщений в существующую тему ( НО, перемещаю то в новую!!)
Вылазит сообщение форума:
Цитата:Выделение сообщений в новую тему
Не выбран раздел форума для перемещения
Картинку приложил.
Переношу в существующую тему, пишет: CODE:Fatal error: Call to undefined function inexists() in /home/ххххх/public_html/хххххххх.ru/postings.php on line 76 Прикреплено изображение
(Отредактировано автором: 12 марта 2011 — 19:55) |
|
|
yura3d |
Отправлено: 12 марта 2011 — 21:05
|
ExBB Team ExBB Developer ExBB Mods Author
Покинул форум
Сообщений всего: 3394
Дата рег-ции: Февр. 2009
Откуда: Минск, Беларусь
Репутация: 353
|
alexx пишет:Прикладываю модифицированный файл postings.php
alexx, Вы что-то явно напутали в самом первом пункте инструкции:
yura3d пишет:Откройте файл postings.php, найдите строку:
CODE: if (count($attaches) !== 0) UpdateAttaches($newtopic,$attaches);
Искомая строка встречается в данном файле 2 раза, Вам необходимо запомнить номер строки при второй встрече.
Судя по тому, что я увидел в Вашем файле, Вы выполнили указанное действие для первой встречи, а не для второй, поэтому все дальнейшие действия с этим файлом также будут ошибочными. Попробуйте ещё раз, не торопитесь, будьте внимательны! |
|
|
alexx |
Отправлено: 12 марта 2011 — 21:37
|
Advanced Member
Покинул форум
Сообщений всего: 495
Дата рег-ции: Февр. 2010
Откуда: Россия
Репутация: 12
|
yura3d пишет:Вы выполнили указанное действие для первой встречи, а не для второй
Запутался и не въеду если честно, «туплю» наверно.
Мои действия.
Сверху - вниз по файлу.
первая встреча строка ( Далее в этом же файле найдите строку): 1489 CODE:if (count($attaches) !== 0) UpdateAttaches($newtopic,$attaches);
промежуток строка: 1500 ( Далее в этом же файле найдите строку) CODE:$newlastposter = GetName($newtopic[$newlastkey]['p_id']);
Вот я вставил исправление между ними 1500 -1689 (Выделите все строки, заключённые между найденными строками (включая найденные). Полученный таким образом фрагмент кода нужно будет заменить на один из следующих)
вторая встреча строка: 1689 CODE:if (count($attaches) !== 0) UpdateAttaches($newtopic,$attaches);
Что не так сделал, подскажите плиз, не врублюсь.
(Добавление)
мне нужно с 1489 по 1689 все выделить ( включая 1500) и заменить, так?
(Добавление)
Меня смутило вот это Цитата:Вам необходимо запомнить номер строки при второй встрече. и посчитал за точку отсчета от 1500 до 1689.(Отредактировано автором: 12 марта 2011 — 21:39) |
|
|
alexx |
Отправлено: 12 марта 2011 — 22:52
|
Advanced Member
Покинул форум
Сообщений всего: 495
Дата рег-ции: Февр. 2010
Откуда: Россия
Репутация: 12
|
yura3d пишет:alexx
К сожалению, указанные Вами номера строк мне ничего не говорят. Эти номера будут отличаться в зависимости от установленных модулей, внесённых правок и т.д. В инструкции всё правильно указано, сейчас ещё раз проверил. Сначала ищите вторую встречу первой строки, затем ищите вторую строку, выделяете фрагмент, заключённый внутри этих строк (включая сами искомые строки) и заменяете указанным фрагментом yura3d
Если Вам не трудно, вставьте пожалуйста эти фрагменты кода, я приложил файл где исправил все кроме того где «туплю»
Тогда можно будет точно узнать че не так. yura3d пишет:Откройте файл postings.php, найдите строку:
CODE:
if (count($attaches) !== 0) UpdateAttaches($newtopic,$attaches);
Искомая строка встречается в данном файле 2 раза, Вам необходимо запомнить номер строки при второй встрече.
Далее в этом же файле найдите строку:
CODE:
$newlastposter = GetName($newtopic[$newlastkey]['p_id']);
Выделите все строки, заключённые между найденными строками (включая найденные). Полученный таким образом фрагмент кода нужно будет заменить на один из следующих:
(Отредактировано автором: 12 марта 2011 — 23:03) |
|
|
alexx |
Отправлено: 12 марта 2011 — 23:01
|
Advanced Member
Покинул форум
Сообщений всего: 495
Дата рег-ции: Февр. 2010
Откуда: Россия
Репутация: 12
|
yura3d пишет:Судя по тому, что я увидел в Вашем файле, Вы выполнили указанное действие для первой встречи, а не для второй, поэтому все дальнейшие действия с этим файлом также будут ошибочными. Попробуйте ещё раз, не торопитесь, будьте внимательны!
Вот сделал для второй по вашему ( у меня первая) .
Ошибки в посте выше.
(Добавление)
При переносе с созданием темы.
Тема была создана Гостем , приартаченный файл отвалился.
Ошибки висят такие Цитата:Notice: Undefined index: ip in /home/ninjatra/public_html/ninjafutures.ru/topic.php on line 183
Notice: Undefined index: post in /home/ninjatra/public_html/ninjafutures.ru/topic.php on line 184
Notice: Undefined index: attach_file in /home/ninjatra/public_html/ninjafutures.ru/topic.php on line 194
Notice: Undefined index: smiles in /home/ninjatra/public_html/ninjafutures.ru/topic.php on line 280
Notice: Undefined index: p_id in /home/ninjatra/public_html/ninjafutures.ru/topic.php on line 297
(Отредактировано автором: 13 марта 2011 — 00:17) |
|
|
|
Поиск в теме | Версия для печати |
Страниц (5): « 1 [2] 3 4 5 » |
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0) |
« Решение проблем » |
Все гости форума могут просматривать этот раздел. Только администраторы и модераторы могут создавать новые темы в этом разделе. Только администраторы и модераторы могут отвечать на сообщения в этом разделе.
|
|
|