Page 1 of 1

[Solved] Error in new IM 140 install.

PostPosted: Fri May 19, 2006 8:11 am
Author: Genjuro-Sensei
I Installed IntegraMOD 1.4.0 + Update IM2017->IM2019 + iCGstation for IM140 in a server with MySQL 5 and PHP 4.4.

When i Tried to post my first topic, as a News with one Attachement and a Poll with two options, logged in as Administator, I GOT THIS ERROR:
Error geting users post stat

DEBUG MODE

SQL Error : 1054 Unknown column 'g.group_id' in 'on clause'

SELECT ug.user_id, g.group_id as g_id, u.user_posts, g.group_count, g.group_count_max FROM phpbb_groups g, phpbb_users u LEFT JOIN phpbb_user_group ug ON g.group_id=ug.group_id AND ug.user_id=2 WHERE u.user_id=2 AND g.group_single_user=0 AND g.group_count_enable=1 AND g.group_moderator<>2

Line : 802
File : functions_post.php


Please HELP !!!
Thanks

PostPosted: Fri May 19, 2006 10:28 am
Author: Eon
I don't think 1.4.0 is mysql 5 compliant.

1.4.1 will be though. It seems like someone had made a post about getting it to work with mysql 5 though. I will see if I can find anything.

PostPosted: Fri May 19, 2006 10:32 am
Author: Eon
http://integramod.com/forum/viewtopic.p ... ight=mysql

Try this. I believe it will fix your problem.

Also using search first can sometimes help you out.

Please put [solved] in front of this thread if this fixed your problem.

Re: Error in new IM 140 install.

PostPosted: Sun May 21, 2006 3:47 am
Author: Genjuro-Sensei
Thanks, yeah it solved the problem, but i got an other problem,

When somone try to register, after validation he got this error
Error geting users post stat

DEBUG MODE

SELECT ug.user_id, g.group_id as g_id, g.group_name , u.user_posts, g.group_count FROM phpbb_groups g, phpbb_users u LEFT JOIN phpbb_user_group ug ON g.group_id=ug.group_id AND ug.user_id=3 WHERE u.user_id=3 AND ug.user_id is NULL AND g.group_count=0 AND g.group_single_user=0 AND g.group_moderator<>3

Line : 404
File : profilcp_board_config.php


HELP PLZ !!!
Thanks

PostPosted: Sun May 21, 2006 5:31 am
Author: IntegraMOD
I think this a my sql 5 issue again it might be worth waiting for 1.4.1

Re: Error in new IM 140 install.

PostPosted: Sun May 21, 2006 5:35 am
Author: Genjuro-Sensei
<img> There might be a solution like [url=http]this[/url]

It solved my first problem, but i dont know how to use it to solve my second problem

PLZ HELP !!

Re: Error in new IM 140 install.

PostPosted: Sun May 21, 2006 5:46 am
Author: IntegraMOD
Open profilcp_board_config.php

find
Code: Select all
SELECT ug.user_id, g.group_id as g_id, g.group_name , u.user_posts, g.group_count FROM phpbb_groups g, phpbb_users u LEFT JOIN phpbb_user_group ug ON g.group_id=ug.group_id AND ug.user_id=3 WHERE u.user_id=3 AND ug.user_id is NULL AND g.group_count=0 AND g.group_single_user=0 AND g.group_moderator<>3


replace with

Code: Select all
SELECT ug.user_id, g.group_id as g_id, u.user_posts, g.group_count, g.group_count_max FROM (phpbb_groups g, phpbb_users u) LEFT JOIN phpbb_user_group ug ON g.group_id=ug.group_id AND ug.user_id=2 WHERE u.user_id=2 AND g.group_single_user=0 AND g.group_count_enable=1 AND g.group_moderator<>2


Please make sure you have a backup in case it all goes wrong.

Re: Error in new IM 140 install.

PostPosted: Sun May 21, 2006 6:37 am
Author: Genjuro-Sensei
Thanks, but.. it didn't work <img>
i got the same error and by the way, i didn't find what you told me, instead, i found this:

Around ligne 395:
Code: Select all
$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";


The hole part is]// autojoin groups where count is zero         $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)) {             $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);             }         } [/code]

So the problem concern the auto join groups function !!!

ANY HELP PLZ !!!!!!!!!!
Thanks

Re: Error in new IM 140 install.

PostPosted: Sun May 21, 2006 6:46 am
Author: IntegraMOD
Also did you see this
In file includes/functions_post.php:

FIND:

$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


REPLACE WITH:

$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)


In file modcp.php:

FIND:

$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


REPLACE WITH:

$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)


and this

In file includes/functions_post.php:

FIND:

$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


REPLACE WITH:

$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)


It looks like my sql 5 needs the FROM QUERY to now be in brackets???

Re: Error in new IM 140 install.

PostPosted: Sun May 21, 2006 2:13 pm
Author: Genjuro-Sensei
I solved the problem !!
It seams that MySQL 5 needs bracket in some cases, i did like this:

In profilecp/profilcp_board_config.php

FIND (Around line 396)
Code: Select all
// autojoin groups where count is zero         $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";


REPLACE WITH]// autojoin groups where count is zero         $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";[/code]
Thanks for help anyway !!!