Перейти к контенту
  • 0

Как искать: "Новые ответы на мои сообщения"?


Design_Nick

Вопрос

Задача вот в чем. Модератору нужно найти темы в которых он написал предупреждение и проконтролировать ответ на него.

 

И вообще где можно найти как "программировать" поиск?

Ссылка на комментарий
Поделиться на других сайтах

Рекомендуемые сообщения

  • 0

Я у себя давно сделал дополнительную опцию поиска своих сообщений, а у иконки сообщения кроме метки наличия своих сообщений в теме сделал еще и возможность перехода к последнему своему сообщению.

 

А в немодифицированном форуме (здесь например) ищу свои сообщения через свой же профиль, заходя в него по линку в шапке: "Вошли как: FatCat ( Выход )"

Ссылка на комментарий
Поделиться на других сайтах

  • 0
Методом поделишься? :D

Что касается кнопки "мои темы", то я просто в шаблон добавил линк на http://forums.ibresource.ru/index.php?act=Search&CODE=01&forums=all&exactname=1&sort_order=desc&namesearch=FatCat - там только ник подставляется по текущему пользователю.

 

 

С переходом к своему последнему сообщению в топике немного сложней. Я долго экспериментировал с нагрузкой и убедился, что экономичней гонять запрос с MAX(pid) в цикле по каждому топику, чем утяжелять подсчетами джойн в основном запросе. Поэтому я добавил запрос нахождения максимального "своего" айдишника поста в теме - внутри цикла по топикам.

Счетчик запросов приводит в оторопь, но само время генерации страницы оказывается практически одинаковым.

Вот сравнительные цифры по гостю и по пользователю, писавшему во многих темах:

[ Время генерации скрипта: 0,0492 ] [ Использовано запросов: 18 ] [ Использовано памяти: 2,007 Мб. ] [ GZIP включён ]

[ Время генерации скрипта: 0,0523 ] [ Использовано запросов: 78 ] [ Использовано памяти: 2,03 Мб. ] [ GZIP включён ]

Получается, что дополнительные 60 (!!!) запросов увеличили нагрузку всего на 6%, у большинства же пользователей дополнительных запросов будет всего 1-2-3...

Для просмотра по ссылке "активные темы":

				if($ibforums->member['id'])
			{
				$DB->query("SELECT MAX( pid ) AS pend FROM ibf_posts WHERE topic_id = ".$topic['tid']." AND  author_id = ".$ibforums->member['id']);
				$t_row = $DB->fetch_row();

				if($t_row['pend'])
					$topic['folder_img']  = "<a title='Перейти к последнему своему сообщению в этой теме' href='{$this->base_url}showtopic=0&view=findpost&p=".$t_row['pend']."'>".str_replace("}>","_DOT}>",$topic['folder_img'])."</a> ";
			}

 

На всякий случай напомню, что у меня "однушка"; для старших нужно смотреть как интерпретировать.

Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить на вопрос...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.