MyBB Community Forums

Full Version: Several bugs/errors
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Hey,

The 'remenber me' function by login doesnt work anymore.
When i close the browser and open again I'm back logged out. This applys for everyone on my forum.

I also have a several plugins installed an somehow it shows some errors.

I always receive kinds of these errors via mail:


Your copy of MyBB running on Official Site Delta Commanders (http://deltacommanders.com/test) has experienced an error. Details of the error include:
---
Type: 2
File: inc/plugins/ajaxpmnotice.php (Line no. 136)
Message
Cannot modify header information - headers already sent by (output started at /usr/home/****/domains/deltacommanders.com/public_html/test/inc/plugins/viewgroups.php:1)

and this is only one of the 200 mails I received.
I've received also other messages with other bugs. However, that errors are kind of same as the one listed above. All are with the cannot modify header information.

Is there any way to solve this and keep the plugins?

I hope someone is able to help me, this is bothering for almost a week:s

really really thanks!!

Reno
(2011-02-18, 12:18 PM)Tankey Wrote: [ -> ]The 'remenber me' function by login doesnt work anymore.
When i close the browser and open again I'm back logged out. This applys for everyone on my forum.

For some reason the author of your theme has changed what the checkbox element is called. It should be called quick_remember but it's called cookieuser, edit this in the header_welcomeblock_guest template.

(2011-02-18, 12:18 PM)Tankey Wrote: [ -> ]I also have a several plugins installed an somehow it shows some errors.

I always receive kinds of these errors via mail:


Your copy of MyBB running on Official Site Delta Commanders (http://deltacommanders.com/test) has experienced an error. Details of the error include:
---
Type: 2
File: inc/plugins/ajaxpmnotice.php (Line no. 136)
Message
Cannot modify header information - headers already sent by (output started at /usr/home/****/domains/deltacommanders.com/public_html/test/inc/plugins/viewgroups.php:1)

and this is only one of the 200 mails I received.
I've received also other messages with other bugs. However, that errors are kind of same as the one listed above. All are with the cannot modify header information.

Is there any way to solve this and keep the plugins?

You'll need to reupload the plugin files it mentions in the errors, there's output before the <?php tag which shouldn't be there.
Do you maybe have a setting on in your browser when you leave it clears your history? Because that would do that.
Hello,

Thanks for the fast response!

Unfortunately that didn't solve the remember me function Sad
I've just edit that line to this:

<td class="smallfont" nowrap="nowrap"><label for="quick_remember "><input name="quick_remember " value="1" tabindex="103" id="quick_remember " accesskey="c" type="checkbox">Remember?</label></td>

I will reinstall the plugins, thanks for the tip!Big Grin

Does anyone else how to solve the remember me problem??
You've put a space after quick_remember in the name...
Wow.. That was verry stupid of me...

I've just reinstalled a plugin called View Usergroups. When I enable it, it shows me this error in the admin CP:

Warning [2] Cannot modify header information - headers already sent by (output started at /usr/home/******/domains/deltacommanders.com/public_html/forum/inc/plugins/viewgroups.php:1) - Line: 51 - File: admin/index.php PHP 5.2.17 (FreeBSD)
File Line Function
[PHP] errorHandler->error
/admin/index.php 51 header
Have you edited that file in notepad or something...?? There's still output at the top, before the <?php...
Hello,

That file truly ruined my whole forum. Noone was able to login anymore and there was an error showed up in the header:$
I've just deleted and I'll try it one time more.

This is the whole file:
<?php

if(!defined("IN_MYBB"))
	die("This file cannot be accessed directly.");

// add hooks
$plugins->add_hook("index_start", "viewgroups_index");

function viewgroups_info()
{
	return array(
		"name"			=> "View Groups",
		"description"	=> "Displays the list of user groups on index page.",
		"website"		=> "http://mybb-plugins.com",
		"author"		=> "Pirata Nervo",
		"authorsite"	=> "http://consoleaddicted.com",
		"version"		=> "1.4",
		"guid" 		=> "8bacd9894791da8dac2ccc6c89f590ce",
		"compatibility"	=> "16*"
	);
}


function viewgroups_activate()
{
	global $db, $lang;
	// create settings group
	$insertarray = array(
		'name' => 'viewgroups', 
		'title' => 'View Groups', 
		'description' => "Settings for View Groups", 
		'disporder' => 100, 
		'isdefault' => 0
	);
	$gid = $db->insert_query("settinggroups", $insertarray);
	// add settings

	$setting0 = array(
		"sid"			=> NULL,
		"name"			=> "viewgroups_groups",
		"title"			=> "Hidden User Groups",
		"description"	=> "Enter the group id\'s (seperated by a comma) of the groups that you don\'t want to be displayed on the index page. (leave blank to disable this feature)",
		"optionscode"	=> "text",
		"value"			=> "1,5,7",
		"disporder"		=> 1,
		"gid"			=> $gid
	);

	$db->insert_query("settings", $setting0);
	
	$setting1 = array(
		"sid"			=> NULL,
		"name"			=> "viewgroups_perpage",
		"title"			=> "Per Page",
		"description"	=> "Display how many users per page?",
		"optionscode"	=> "text",
		"value"			=> "15",
		"disporder"		=> 2,
		"gid"			=> $gid
	);

	$db->insert_query("settings", $setting1);
	
	$setting2 = array(
		"sid"			=> NULL,
		"name"			=> "viewgroups_clickable",
		"title"			=> "Clickable User Groups",
		"description"	=> "Set to Yes if you want group names to be clickable, opening a new page which shows the users of the clicked group.",
		"optionscode"	=> "yesno",
		"value"			=> "1",
		"disporder"		=> 2,
		"gid"			=> $gid
	);

	$db->insert_query("settings", $setting2);
	
	rebuild_settings();

	// add templates
	$template0 = array(
		"tid" => "NULL",
		"title" => "viewgroups_index",
		"template" => $db->escape_string('
<tr>
	<td class="tcat"><strong>{$lang->viewgroups_groups}</strong></td>
</tr>
<tr>
	<td class="trow1"><span class="smalltext">{$usergroups}</span></td>
</tr>'),
		"sid" => "-1",
	);
	$db->insert_query("templates", $template0);
	
	$template1 = array(
		"tid" => "NULL",
		"title" => "viewgroups_user",
		"template" => $db->escape_string('
<tr>
<td class="{$bgcolor}" align="center">{$user[\'avatar\']}</td>
<td class="{$bgcolor}">{$user[\'username\']}</td>
<td class="{$bgcolor}" align="center">{$user[\'regdate\']}</td>
<td class="{$bgcolor}" align="center">{$user[\'lastactive\']}</td>
<td class="{$bgcolor}" align="center">{$user[\'postnum\']}</td>
</tr>'),
		"sid" => "-1",
	);
	$db->insert_query("templates", $template1);
	
	$template2 = array(
		"tid" => "NULL",
		"title" => "viewgroups",
		"template" => $db->escape_string('
<html>
	<head>
	<title>{$title}</title>
	{$headerinclude}
	</head>
	<body>
	{$header}
		<table class="tborder" border="0" cellspacing="{$theme[\'borderwidth\']}" cellpadding="{$theme[\'tablespace\']}">
			<tbody>
				<tr class="thead">
					<td colspan="5">
						{$lang->viewgroups_groups_group}
					</td>
				</tr>
				<tr class="tcat">
					<td width="1%" align="center"><strong>{$lang->viewgroups_groups_avatar}</strong></td>
					<td><strong>{$lang->viewgroups_groups_username}</strong></td>
					<td width="15%" align="center"><strong>{$lang->viewgroups_groups_regdate}</strong></td>
					<td width="15%" align="center"><strong>{$lang->viewgroups_groups_lastactive}</strong></td>
					<td width="10%" align="center"><strong>{$lang->viewgroups_groups_postcount}</strong></td>
				</tr>
				{$users}
			</tbody>
		</table>
		{$multipage}
		{$footer}
	</body>
</html>'),
		"sid" => "-1",
	);
	$db->insert_query("templates", $template2);
	
	// edit templates
	require_once MYBB_ROOT.'inc/adminfunctions_templates.php';

	find_replace_templatesets('index_boardstats', '#'.preg_quote('{$birthdays}').'#', '{$birthdays}'."\n".'{$viewgroups}');

}


function viewgroups_deactivate()
{
	global $db, $mybb;
	// delete settings group
	$db->delete_query("settinggroups", "name = 'viewgroups'");

	// remove settings
	$db->delete_query('settings', 'name IN ( \'viewgroups_groups\',\'viewgroups_perpage\',\'viewgroups_clickable\')');

	rebuild_settings();
	
	// delete templates
	$db->delete_query('templates', 'title IN ( \'viewgroups_index\',\'viewgroups\',\'viewgroups_user\')');
	
	// edit templates
	require_once MYBB_ROOT.'inc/adminfunctions_templates.php';
	find_replace_templatesets('index_boardstats', '#'.preg_quote("\n".'{$viewgroups}').'#', "", 0);

}

function viewgroups_index()
{
	global $mybb, $lang, $db, $viewgroups, $usergroups, $templates, $header, $footer, $headerinclude, $title, $theme;
	
	$gid = intval($mybb->input['gid']);
	
	if ($mybb->input['action'] != "viewgroups" || ($mybb->input['action'] != "viewgroups" && $gid <= 0))
	{
		$lang->load("viewgroups");
		
		$usergroups = $comma = '';
		
		$query = $db->simple_select("usergroups", "gid,title,namestyle", "gid NOT IN ('".str_replace(',', '\',\'', $mybb->settings['viewgroups_groups'])."')");
		while ($group = $db->fetch_array($query))
		{
			if ($mybb->settings['viewgroups_clickable'] != 1)
				$usergroups .= $comma.str_replace('{username}', htmlspecialchars_uni($group['title']), $group['namestyle']);
			else
				$usergroups .= $comma.'<a href="'.$mybb->settings['bburl'].'/index.php?action=viewgroups&amp;gid='.$group['gid'].'" />'.str_replace('{username}', htmlspecialchars_uni($group['title']), $group['namestyle']).'</a>';
			
			$comma = ', ';
		}
		
		eval("\$viewgroups = \"".$templates->get("viewgroups_index")."\";");
	}
	else {
		
		if ($mybb->settings['viewgroups_clickable'] != 1)
			error_no_permission();
			
		if (in_array($gid, explode(',', $mybb->settings['viewgroups_groups'])))
			error_no_permission();
		
		global $users, $user, $bgcolor, $multipage;
		
		$users = '';
		
		$lang->load("viewgroups");
		
		$query = $db->simple_select("usergroups", "title", "gid=".$gid);
		$group_title = $db->fetch_field($query, 'title');
		$title = $lang->sprintf($lang->viewgroups_groups_group, htmlspecialchars_uni($group_title));
		$lang->viewgroups_groups_group = '<strong>'.$lang->sprintf($lang->viewgroups_groups_group, htmlspecialchars_uni($group_title)).'</strong>';
		
		// pagination
		$per_page = $mybb->settings['viewgroups_perpage'];
		$mybb->input['page'] = intval($mybb->input['page']);
		if($mybb->input['page'] && $mybb->input['page'] > 1)
		{
			$mybb->input['page'] = intval($mybb->input['page']);
			$start = ($mybb->input['page']*$per_page)-$per_page;
		}
		else
		{
			$mybb->input['page'] = 1;
			$start = 0;
		}
		
		$total_rows = 0;
		
		$shownleaderssep = $shownregularsep = false;
		
		switch($db->type)
		{
			case "pgsql":
			case "sqlite3":
			case "sqlite2":
				$additional_sql .= " OR ','||additionalgroups||',' LIKE '%,{$gid},%'";
				break;
			default:
				$additional_sql .= "OR CONCAT(',',additionalgroups,',') LIKE '%,{$gid},%'";
		}
		$search_sql .= " (usergroup='{$gid}' {$additional_sql})";
		
		// total users
		$total_rows = $db->fetch_field($db->simple_select("users", "COUNT(uid) as users", $search_sql), "users");
		
		$users = array();
		
		// get group members
		$query = $db->simple_select("users", "*",$search_sql, array('limit' => "{$start}, {$per_page}"));
		while ($user = $db->fetch_array($query))
		{
			// make sure group we're viewing belongs to additional groups if the primary group is not the group we're viewing
			/*if ($user['additionalgroups'] != '' && $user['usergroup'] != $gid)
			{
				if (!in_array($gid, explode(',', $user['additionalgroups'])))
				{
					$total_rows--; // maintain a proper count
					continue;
				}
			}*/
			
			$users[$user['uid']] = $user;
			$users[$user['uid']]['isleader'] = 0;
		}
		
		$leaders = array();
		
		// get leaders
		$query = $db->simple_select("groupleaders", "*", 'gid='.$gid);
		while ($leader = $db->fetch_array($query))
		{
			$leaders[$leader['uid']] = $leader;
			
			// leader is member of the group so we can just use the data we got from the users query
			if ($users[$leader['uid']])
				$leaders[$leader['uid']] = $users[$leader['uid']];
			else // leader is not member of the group so we have to get the data here
				$leaders[$leader['uid']] = get_user($leader['uid']);

			$leaders[$leader['uid']]['isleader'] = 1;
		}
		
		if (!$users && !$leaders)
		{
			// no members and and no leaders found
			$users = '<tr><td colspan="5" class="trow1">'.$lang->viewgroups_usersnotfound.'</td></tr>';
		}
		else {
			$members = array();
			
			// leaders come first
			if ($leaders)
			{
				foreach ($leaders as $leader)
				{
					$members[] = $leader;
				}
				
				$leadersep = '<tr><td colspan="5" class="trow_sep"><strong>'.$lang->viewgroups_leaders.'</strong></td></tr>';
			}
			else
				$leadersep = '';
			
			if ($users)
			{
				foreach ($users as $user)
				{
					if ($leaders[$user['uid']]) // remove group leaders from the regular members list
						continue;
					$members[] = $user;
				}
				
				$regularsep = '<tr><td colspan="5" class="trow_sep"><strong>'.$lang->viewgroups_members.'</strong></td></tr>';
			}
			else
				$regularsep = '';
			
			$users = '';
			
			if ($members)
			{
				foreach ($members as $user)
				{
					// show group leaders seperator if this is the first leader and if we have any leaders
					if ($user['isleader'] == 1 && $shownleaderssep === false)
					{
						$users .= $leadersep;
						$shownleaderssep = true;
					}
					// show regular members seperator if this is the first member and if there is group leader seperator
					elseif ($user['isleader'] == 0 && $shownregularsep === false && $shownleaderssep === true)
					{
						$users .= $regularsep;
						$shownregularsep = true;
					}
					
					$bgcolor = alt_trow();
					
					if ($user['avatar'])
						$user['avatar'] = '<img src="'.htmlspecialchars_uni($user['avatar']).'" width="70" height="70" />';
					else 
						$user['avatar'] = '';
		
					$user['username'] = '<a href="'.$mybb->settings['bburl'].'/member.php?action=profile&amp;uid='.$user['uid'].'" />'.htmlspecialchars_uni($user['username']).'</a>';
					$user['regdate'] = my_date($mybb->settings['regdateformat'], $user['regdate']);
					$user['postnum'] = intval($user['postnum']);
					
					if($user['lastactive'])
					{
						$user['lastactive'] = my_date($mybb->settings['dateformat'], $user['lastactive']);
						$user['lastactive'] .= ', ';
						$user['lastactive'] .= my_date($mybb->settings['timeformat'], $user['lastactive']);
					}
					else
					{
						$user['lastactive'] = $lang->lastvisit_never;
					}
					
					eval("\$users .= \"".$templates->get("viewgroups_user")."\";");
				}
			}
			else
				$users = '<tr><td colspan="5" class="trow1">'.$lang->viewgroups_usersnotfound.'</td></tr>';
		}
		
		// multi-page
		if ($total_rows > $per_page)
			$multipage = multipage($total_rows, $per_page, $mybb->input['page'], $mybb->settings['bburl']."/index.php?action=viewgroups&amp;gid={$gid}");	
		
		eval("\$group_page = \"".$templates->get("viewgroups")."\";");
		
		output_page($group_page);
		exit;
	}
}

?>

Also the quick_remember still doesn't workSad

Thanks for your support that fast!
The ViewGroup error is solvedSmile

Thanks
Oh, hang on, this theme does the login box differently to usual... erm... OK, change name="quick_remember" to name="remember" and value="1" to value="yes"... work now??
You're a genius!

That was the trick!

Thank you really much, wows!

+100 Matt