Страница 3 из 6

Добавлено: 26.05.2006 2:37
Fluke
Поставил мод, теперь не могу создавать группы, выдаёт:

Код: Выделить всё

Could not insert new group

DEBUG MODE

SQL Error : 1054 Unknown column 'group_count' in 'field list'

INSERT INTO phpbb_groups (group_type, group_name, group_description, group_moderator, group_count,group_count_max,group_count_enable, group_single_user) VALUES (0, 'srth', 'srth', 2, '99999999','99999999','', '0')

Line : 410
File : admin_groups.php
Где ошибка?

Добавлено спустя 6 часов 58 минут 31 секунду:

Некорректно установил мод, напутал с auto_group_db_update.php как теперь лечить?
Выручайте! Форум лежит!

Добавлено: 26.05.2006 9:58
VVVas
Fluke
откатить назад и поставит заново правильно. Или я должен протелепатировать чего вы там "напутали"?
Fluke писал(а):напутал с auto_group_db_update.php
Что там вообще можно напутать - его же тольоко запустить надо?

Добавлено: 28.05.2006 1:14
Erlang
А кто-то думал о модернизации данного МОДа?

Допустим:
1. Разрешить/запретить добавление файлов группе
2. Разрешить/запретить голосовать группе
3. Разрешить/запретить писать в определенных форумах
4. Разрешить/запретить отправку ЛС группе
5. Автоудаление Пользователей через N дней
6. ..............

Добавлено: 28.05.2006 1:43
Siava
Erlang
Так много групп создайте. Всё это решается средствами phpbb :roll:

Добавлено: 28.05.2006 2:04
Erlang
Siava писал(а):Так много групп создайте.
Так желательна универсальность :?
Siava писал(а):Всё это решается средствами phpbb
Тогда зачем МОДы? :D

Добавлено: 30.05.2006 10:37
VVVas
Erlang писал(а):1. Разрешить/запретить добавление файлов группе
2. Разрешить/запретить голосовать группе
3. Разрешить/запретить писать в определенных форумах
Права доступа групп не пробовали предварительно изучить?

Добавлено: 03.06.2006 17:46
Fluke
VVVas
Переустановил форум полностью, запускаю auto_group_db_update.php выдаёт

Код: Выделить всё

You are not Authorised to do this
Знаю, в идеале он должен таблицы создать, может проще это самому сделать?

Добавлено: 03.06.2006 20:35
VVVas
Fluke
Подлогиниться админом перед выполнением скрипта так сложно?

Добавлено: 03.06.2006 22:41
Fluke
Да сложно!
Подлогинился, таже картина

Добавлено спустя 11 минут 18 секунд:

Вот блин.
Получилось, только с кодом в конце адреса.

Добавлено: 18.09.2006 13:06
Siava
Мод некорректно работает с MySQL 5.0.* :(

При добавлении/удалении сообщений/тем выползает ошибка
Error geting users post stat

Вот участки кода, где может быть ошибка:

Код: Выделить всё

# 
#-----[ OPEN ]------------------------------------------ 
# 
includes/functions_post.php

# 
#-----[ FIND ]------------------------------------------ 
# 
	return;
}

//
// Delete a post/poll

# 
#-----[ BEFORE, ADD ]------------------------------------------ 
# 
	$sql = "SELECT ug.user_id, g.group_id as g_id, u.user_posts, g.group_count, g.group_count_max FROM " . GROUPS_TABLE . " g, ".USERS_TABLE." u 
		LEFT JOIN ". USER_GROUP_TABLE." ug ON g.group_id=ug.group_id AND ug.user_id=$user_id
		WHERE u.user_id=$user_id
		AND g.group_single_user=0 
		AND g.group_count_enable=1
		AND g.group_moderator<>$user_id";
	if ( !($result = $db->sql_query($sql)) )
	{
		message_die(GENERAL_ERROR, 'Error geting users post stat', '', __LINE__, __FILE__, $sql);
	}
	while ($group_data = $db->sql_fetchrow($result))
	{
$user_already_added = (empty($group_data['user_id'])) ? FALSE : TRUE; 
$user_add = ($group_data['group_count'] == $group_data['user_posts'] && $user_id!=ANONYMOUS) ? TRUE : FALSE; 
$user_remove = ($group_data['group_count'] > $group_data['user_posts'] || $group_data['group_count_max'] < $group_data['user_posts']) ? TRUE : FALSE;
		if ($user_add && !$user_already_added)
		{
			//user join a autogroup
			$sql = "INSERT INTO " . USER_GROUP_TABLE . " (group_id, user_id, user_pending) 
				VALUES (".$group_data['g_id'].", $user_id, '0')";
			if ( !($db->sql_query($sql)) )
			{
				message_die(GENERAL_ERROR, 'Error insert users, group count', '', __LINE__, __FILE__, $sql);
			}
		} else
		if ( $user_already_added && $user_remove)
		{
			//remove user from auto group
			$sql = "DELETE FROM " . USER_GROUP_TABLE . "
				WHERE group_id=".$group_data['g_id']." 
				AND user_id=$user_id";
			if ( !($db->sql_query($sql)) )
			{
				message_die(GENERAL_ERROR, 'Could not remove users, group count', '', __LINE__, __FILE__, $sql);
			}
		}
	}

Код: Выделить всё

# 
#-----[ OPEN ]------------------------------------------ 
# 
includes/usercp_register.php

# 
#-----[ FIND ]------------------------------------------ 
#
$email_template = 'user_welcome'; 
}

# 
#-----[ AFTER, ADD ]------------------------------------------ 
# 
$sql = "SELECT ug.user_id, g.group_id as g_id, g.group_name , u.user_posts, g.group_count FROM " . GROUPS_TABLE . " g, ".USERS_TABLE." u 
      LEFT JOIN ". USER_GROUP_TABLE." ug ON g.group_id=ug.group_id AND ug.user_id=$user_id 
      WHERE u.user_id=$user_id 
         AND ug.user_id is NULL 
         AND g.group_count=0 
         AND g.group_single_user=0 
         AND g.group_moderator<>$user_id"; 
if ( !($result = $db->sql_query($sql)) ) 
{ 
   message_die(GENERAL_ERROR, 'Error geting users post stat', '', __LINE__, __FILE__, $sql); 
} 
while ($group_data = $db->sql_fetchrow($result)) 
{ 
   //user join a autogroup 
   $sql = "INSERT INTO " . USER_GROUP_TABLE . " (group_id, user_id, user_pending) 
      VALUES (".$group_data['g_id'].", $user_id, 0)"; 
   if ( !($db->sql_query($sql)) ) 
   { 
      message_die(GENERAL_ERROR, 'Error inserting user group, group count', '', __LINE__, __FILE__, $sql); 
   } 
} 

Код: Выделить всё

# 
#-----[ OPEN ]------------------------------------------ 
# 
modcp.php
# 
#-----[ FIND ]------------------------------------------ 
# 
$count_sql = array();

# 
#-----[ AFTER, ADD ]------------------------------------------ 
# 
$user_updated = array();

# 
#-----[ FIND ]------------------------------------------ 
# 
WHERE user_id = " . $row['poster_id'];

# 
#-----[ AFTER, ADD ]------------------------------------------ 
# 
	$user_updated [] = "SELECT ug.user_id, g.group_id as g_id, u.user_posts, g.group_count, g.group_count_max, ".$row['poster_id']." as u_id FROM " . GROUPS_TABLE . " g, ".USERS_TABLE." u
		LEFT JOIN ". USER_GROUP_TABLE." ug ON g.group_id=ug.group_id AND ug.user_id=".$row['poster_id']."
		WHERE u.user_id=".$row['poster_id']."
		AND g.group_single_user=0 
		AND g.group_count_enable=1
		AND g.group_moderator<>".$row['poster_id'];

# 
#-----[ FIND ]------------------------------------------ 
# 
$sql = "SELECT post_id

# 
#-----[ BEFORE, ADD ]------------------------------------------ 
# 
if ( sizeof($user_updated) )
{
	for($i = 0; $i < sizeof($user_updated); $i++)
	{
		if ( !($result = $db->sql_query($user_updated[$i])) )
		{
			message_die(GENERAL_ERROR, 'Error geting users post stat', '', __LINE__, __FILE__, $user_updated[$i]);
		}
		while ($group_data = $db->sql_fetchrow($result))
		{
			$user_already_added = (!empty($group_data['user_id']) || $group_data['u_id']==ANONYMOUS) ? TRUE : FALSE;
			$user_add = ($group_data['group_count'] == $group_data['user_posts'] && $group_data['u_id']!=ANONYMOUS) ? TRUE : FALSE;
			$user_remove = ($group_data['group_count'] > $group_data['user_posts'] && $group_data['u_id']!=ANONYMOUS) ? TRUE : FALSE;
			if ($user_add && !$user_already_added)
			{
				//user join a autogroup
				$sql = "INSERT INTO " . USER_GROUP_TABLE . " (group_id, user_id, user_pending) 
					VALUES (".$group_data['g_id'].", ".$group_data['u_id'].", '0')";
				if ( !($db->sql_query($sql)) )
				{
					message_die(GENERAL_ERROR, 'Error insert users, group count', '', __LINE__, __FILE__, $sql);
				}
			} else
			if ( $user_already_added && $user_remove)
			{
				//remove user from autogroup
				$sql = "DELETE FROM " . USER_GROUP_TABLE . "
					WHERE group_id=".$group_data['g_id']." 
					AND user_id=".$group_data['u_id'];
				if ( !($db->sql_query($sql)) )
				{
					message_die(GENERAL_ERROR, 'Could not remove users, group count', '', __LINE__, __FILE__, $sql);
				}
			}
			unset ($group_data);
		}
		$db->sql_freeresult($result);
	}
}
Форум Нильса закрыт, даже не знаю куда писать :(
Наверно стоит на phpbb.com поискать.

Добавлено: 18.09.2006 13:46
Поручик
Siava
гм, ну вот глянул на phpbbhacks.com/forums
Что-то похоже

Добавлено спустя 11 минут 51 секунду:

Вот еще надыбал
испания
франция

Добавлено: 18.09.2006 13:50
Siava
Уже нашёл как исправить. Кажется работает! :)

В моде есть 3 места, где добавляется такой кусок кода:

Код: Выделить всё

FROM " . GROUPS_TABLE . " g, ".USERS_TABLE." u
Для корректной работы с MySQL 5.0.* надо в каждом из них поменять местами, чтобы стало так:

Код: Выделить всё

FROM ".USERS_TABLE." u, " . GROUPS_TABLE . " g
Добавлено спустя 2 минуты 45 секунд:

Поручик
И тебе тоже спасибо, что не поленился помочь :)

Добавлено: 07.12.2006 21:33
Spaik
Мне к сожалению не удалось подружить этот мод с Extend rank color, все нормально и таблицы создаються но в итоге чистый лист страницы.

Добавлено: 21.03.2007 11:46
YouRich
У меня вопрос. По поиску более похожего чем эта тема не нашел.

Собственно вот: Есть ветка в форуме. Скрытая для всех кроме тех юзеров что состоят в группе. Этим модом все бы и обошлось, только хотелось бы держать некий контроль над процессом. То есть возможно ли сделать следующее.
В группе есть где-то возможность подать "заявление о вступлении в группу". Может ли этот "мод" перекидывать пользователей автоматически в "кандидаты" в группу по количеству постов. А там уже админ или модер просто ставит галочку и нажимает "принять".

Вобщем такая трабла. ПХП я не знаю. Посему просьба. пожет кто нить подкорректирует сий мод, или ссылку мне даст на эту тему???

Спасибо заранее.

Добавлено: 04.04.2007 9:31
satnsk
подскажите, че не так сделал, нет подписей

вот group_edit_body.tpl

Код: Выделить всё

	<tr> 
	  <td class="row1" width="38%"><span class="gen">{L_GROUP_STATUS}:</span></td>
	  <td class="row2" width="62%"> 
		<input type="radio" name="group_type" value="{S_GROUP_OPEN_TYPE}" {S_GROUP_OPEN_CHECKED} /> {L_GROUP_OPEN} &nbsp;&nbsp;<input type="radio" name="group_type" value="{S_GROUP_CLOSED_TYPE}" {S_GROUP_CLOSED_CHECKED} />	{L_GROUP_CLOSED} &nbsp;&nbsp;<input type="radio" name="group_type" value="{S_GROUP_HIDDEN_TYPE}" {S_GROUP_HIDDEN_CHECKED} />	{L_GROUP_HIDDEN}</td> 
	</tr>
<tr> 
  <td class="row1" width="38%"><span class="gen">{L_GROUP_COUNT}:<br/>{L_GROUP_COUNT_MAX}:</span><br/>
  <span class="gensmall">{L_GROUP_COUNT_EXPLAIN}</span></td>
  <td class="row2" width="62%"><input type="text" class="post" name="group_count" maxlength="12" size="12" value="{GROUP_COUNT}" /><br/><input type="text" 
class="post" name="group_count_max" maxlength="12" size="12" value="{GROUP_COUNT_MAX}" />
	<br/>&nbsp;&nbsp; <span class="gen"></span><input type="checkbox" name="group_count_enable" {GROUP_COUNT_ENABLE_CHECKED} 
>&nbsp;{L_GROUP_COUNT_ENABLE}
	<br/>&nbsp;&nbsp; <input type="checkbox" name="group_count_update" value="0"/>&nbsp;{L_GROUP_COUNT_UPDATE}
	<br/>&nbsp;&nbsp; <input type="checkbox" name="group_count_delete" value="0"/>&nbsp;{L_GROUP_COUNT_DELETE}</span>
  </td>
</tr>

	<!-- BEGIN group_edit -->
Добавлено спустя 1 час 19 минут 6 секунд:
Siava писал(а):В моде есть 3 места, где добавляется такой кусок кода:


Код:
FROM " . GROUPS_TABLE . " g, ".USERS_TABLE." u


Для корректной работы с MySQL 5.0.* надо в каждом из них поменять местами, чтобы стало так:


Код:
FROM ".USERS_TABLE." u, " . GROUPS_TABLE . " g
я нашел только 2 места :(
includes/usercp_register.php
includes/functions_post.php