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

Ошибка при очистке форумов в админке


pops

Вопрос

При очистке форумов в админке.

 

Call to undefined method sql_queries::msg_get_cc_users() in forum/ips_kernel/class_db.php on line 610

 

class_db.php

  
 function build_query_from_cache( $q="", $args=array(), $method='sql_queries' )
{
	if ( $this->obj['query_cache_file'] and $method == 'sql_queries' )
	{
  		$this->cur_query .= $this->sql->$q( $args );   //строка 610
	}
	else if ( in_array( $method, $this->loaded_classes ) )
	{
		$this->cur_query .= $this->$method->$q( $args );
	} 
}

 

 

mysql_queries.php

   function msg_get_cc_users( $a )
{
		return "SELECT m.mgroup_others, m.id, m.name, m.members_disable_pm, m.members_display_name, m.msg_total, m.view_pop, m.email_pm, m.language, m.email, me.vdirs, g.g_max_messages, g.g_use_pm 
					FROM ".SQL_PREFIX."members m
						INNER JOIN ".SQL_PREFIX."groups g ON (g.g_id=m.mgroup)
						LEFT JOIN ".SQL_PREFIX."member_extra me ON (me.id=m.id)
				   	WHERE m.members_l_display_name IN (".implode(",",$a['name_array']).")";
}

 

 

пробовал менять на:

 

   function msg_get_cc_users( $a )
{

	return "SELECT m.mgroup_others, m.id, m.name, m.members_disable_pm, m.members_display_name, m.msg_total, m.view_pop, m.email_pm, m.language, m.email, me.vdirs, g.g_max_messages, g.g_use_pm FROM (".SQL_PREFIX."members m, ".SQL_PREFIX."groups g)
			LEFT JOIN ".SQL_PREFIX."member_extra me ON (m.id=me.id)
		   WHERE LOWER(m.members_display_name) IN (".implode(",",$a['name_array']).")
		   AND m.mgroup=g.g_id";
}

 

не помогло.

 

2.3.3 mysql 5

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

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

  • 0

Как я понял у тебя версия форума 2.3.1?

 

В новых версиях форума в функции build_query_from_cache добавлена проверка.

 

Попробуй добавить данную проверку

 

С проверкой данная функция будет выглядеть так:

function build_query_from_cache( $q="", $args=array(), $method='sql_queries' )
{
	if ( $method == 'sql_queries' and !method_exists( $this->sql, $q ) )
	{
		if ( is_array( $this->loaded_classes ) )
		{
			foreach ( $this->loaded_classes as $sql_extension_obj )
			{
				if ( method_exists( $this->$sql_extension_obj, $q ) )
				{
					$method = $sql_extension_obj;
					continue;
				}
			}
		}
	}

	if ( $this->obj['query_cache_file'] and $method == 'sql_queries' )
	{
		$this->cur_query .= $this->sql->$q( $args );
	}
	else if ( in_array( $method, $this->loaded_classes ) )
	{
		$this->cur_query .= $this->$method->$q( $args );
	}
}

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

  • 0

	function load_cache_file( $filepath, $classname='sql_extra_queries' )
{
	if ( ! file_exists( $filepath ) )
	{
		print "Cannot locate $filepath - exiting!";
		exit();
	}
	else
	{
		require_once( $filepath );
		{
			$this->$classname	   = new $classname( $this );
			$this->loaded_classes[] = $classname;
		}
	}
}

 

 

	function _load_cache_file()
{
	if ( $this->obj['query_cache_file'] )
 	{
 		require_once( $this->obj['query_cache_file'] );

		$sql_queries_name = $this->sql_queries_name ? $this->sql_queries_name : 'sql_queries';

 		$this->sql = new $sql_queries_name( $this );
 	}
}

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

  • 0
У меня та же проблема, аппелирую к топикстартеру: получилось ли? И если да, то что конкретно делали?
Ссылка на комментарий
Поделиться на других сайтах

  • 0
Список файлов в ./sources/sql/ напишите.
Ссылка на комментарий
Поделиться на других сайтах

  • 0
Логично. Первым делом стоит таки обратиться к сообщению #6 и попробовать вывести, какие файлы загружаются.
Ссылка на комментарий
Поделиться на других сайтах

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

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

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

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

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

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

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

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

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

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

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