Medals Mod weigert sich

Du hast Probleme beim Einbau oder bei der Benutzung eines Mods? In diesem Forum bist du richtig.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
MAX-Driver
Mitglied
Beiträge: 241
Registriert: 01.11.2004 20:46
Wohnort: Bautzen(Sachsen)
Kontaktdaten:

Medals Mod weigert sich

Beitrag von MAX-Driver »

Hallo,

Und zwar weigert sich mein Medals-Mod in der Übersicht der Auszeichnungen, mehr als 2 Kategorien anzuzeigen.

Hier mal den interressanten Teil der medals.php zur Fehleranalyse:

Code: Alles auswählen

//
// Category
//
$sql = "SELECT cat_id, cat_title, cat_order
	FROM " . MEDAL_CAT_TABLE . "
	ORDER BY cat_order";
if( !($result = $db->sql_query($sql)) )
{
	message_die(GENERAL_ERROR, 'Could not query medal categories list', '', __LINE__, __FILE__, $sql);
}

$category_rows = array();
while ($row = $db->sql_fetchrow($result) )
{
	$category_rows[] = $row;
}
$db->sql_freeresult($result);


	//
	// Okay, let's build the index
	//

	for($i = 0; $i < $total_categories; $i++)
	{
		$cat_id = $category_rows[$i]['cat_id'];

		//
		// Should we display this category/medal set?
		//
		$display_medal = false;
		for($k = 0; $k < $total_categories; $k++)
		{
			if ( $medal_data[$k]['cat_id'] == $cat_id )
			{
				$display_medal = true;
			}
		}

		if ( $display_medal )
		{
			$template->assign_block_vars('catrow', array(
				'CAT_ID' => $cat_id,
				'CAT_DESC' => $category_rows[$i]['cat_title'])
			);

			for($j = 0; $j < $total_medals; $j++)
			{
				if ( $medal_data[$j]['cat_id'] == $cat_id )
				{
					$medal_id = $medal_data[$j]['medal_id'];

					if ( count($medal_moderators[$medal_id]) > 0 )
					{
						$moderator_list = implode(', ', $medal_moderators[$medal_id]);
					}
					else
					{
						$moderator_list = $lang['No_medal_mod'];
					}
					if ( count($medal_users[$medal_id]) > 0 )
					{
						$user_list = implode(', ', $medal_users[$medal_id]);
					}
					else
					{
						$user_list = $lang['No_medal_members'];
					}
					$template->assign_block_vars('catrow.medals', array(
						'MEDAL_ID' => $medal_data[$j]['medal_name'],
						'MEDAL_NAME' => $medal_data[$j]['medal_name'],
						'MEDAL_DESCRIPTION'  => $medal_data[$j]['medal_description'],
						'MEDAL_IMAGE' => ($medal_data[$j]['medal_image'] == '') ? '' : '<img src="'. $medal_data[$j]['medal_image'] . '" border="0" alt="' . $medal_data[$j]['medal_name'] . '" title="' . $medal_data[$j]['medal_name'] . '" align="center">',
						'MEDAL_MOD' => $moderator_list,
						'USERS_LIST' => $user_list,
						'U_MEDAL_CP' => append_sid("medalcp.$phpEx?" . POST_MEDAL_URL . "=".$medal_data[$j]['medal_id']."&sid=".$userdata['session_id']))
					);

					$is_moderator = check_medal_mod($medal_id);

					if ( $is_moderator || $userdata['user_level'] == ADMIN )
					{
						$template->assign_block_vars('catrow.medals.switch_mod_option', array());
					}
				}
			}
		}
	} // for ... categories

}// if ... total_categories
else
{
	message_die(GENERAL_MESSAGE, $lang['No_medal']);
}
Hoffe es sieht jemand den Fehler.
Kann ihn leider nirgendwo ausmachen.

Danke.

Gruß,
Floh
Benutzeravatar
easygo
Mitglied
Beiträge: 2170
Registriert: 03.09.2004 13:45
Kontaktdaten:

Beitrag von easygo »

Code: Alles auswählen

for($i = 0; $i < $total_categories; $i++) 
$total_categories woher? Versuchs mal so -->

Code: Alles auswählen

for($i = 0; $i < count($category_rows); $i++) 
MAX-Driver
Mitglied
Beiträge: 241
Registriert: 01.11.2004 20:46
Wohnort: Bautzen(Sachsen)
Kontaktdaten:

Beitrag von MAX-Driver »

ne klappt nicht.

Muß an irgendwas anderem liegen.

Aber trotzdem danke!
MAX-Driver
Mitglied
Beiträge: 241
Registriert: 01.11.2004 20:46
Wohnort: Bautzen(Sachsen)
Kontaktdaten:

Beitrag von MAX-Driver »

nach dem Suchen auf phpBB.com bin ich endlich fündig geworden.

folgender Code muß in der medals.php ersetzt werden (für alle die zukünftig dieses Problem haben):

Code: Alles auswählen

               // 
                // Should we display this category/medal set? 
                // 
                $display_medal = 0; 
                for($k = 0; $k < $total_medals; $k++) 
                { 
                        if ( $medal_data[$k]['cat_id'] == $cat_id ) 
                        { 
                                $display_medal = 1; 
                        } 
                } 
Benutzeravatar
easygo
Mitglied
Beiträge: 2170
Registriert: 03.09.2004 13:45
Kontaktdaten:

Beitrag von easygo »

easygo hat geschrieben:$total_categories woher?
Quelle: [BETA] Medal System MOD [ Latest: 2.2.3 ]

Code: Alles auswählen

//
// Category
//
$sql = "SELECT cat_id, cat_title, cat_order
	FROM " . MEDAL_CAT_TABLE . "
	ORDER BY cat_order";
if( !($result = $db->sql_query($sql)) )
{
	message_die(GENERAL_ERROR, 'Could not query medal categories list', '', __LINE__, __FILE__, $sql);
}

$category_rows = array();
while ($row = $db->sql_fetchrow($result) ) 
{
	$category_rows[] = $row;
}
$db->sql_freeresult($result);

if( ( $total_categories = count($category_rows) ) )
daher also ^^ easy
Antworten

Zurück zu „phpBB 2.0: Mod Support“