Seite 1 von 1

Formel1 Mod - Grafik für die Plätze 1 - 3

Verfasst: 13.06.2007 14:03
von Dungeonwatcher
Hi! 8)

Ich möchte im Formel1 Mod das die ersten 3 Ränge eine Grafik anstelle der Nummerierung angezeigt bekommen. Für den 1. Platz habe ich das mittlerweile hinbekommen:

Code: Alles auswählen

//
// Get all tipps and fill Top10
//
$sql = "SELECT sum(tipp_points) AS total_points, tipp_user FROM " . FORMEL_TIPPS_TABLE . "
        GROUP BY tipp_user
        ORDER BY total_points DESC";
if (!$result = $db->sql_query($sql))
{
      message_die(GENERAL_ERROR, 'Could not query tipps', '', __LINE__, __FILE__, $sql);
}
$first_rank = $phpbb_root_path . "images/formel/goldpokal.gif";
$rank = 0;
while ($row = $db->sql_fetchrow($result)) {
      $rank++;
      $tipp_user_row = get_userdata($row['tipp_user']);
      $tipp_username = $tipp_user_row['username'];
      $template->assign_block_vars('top_tippers', array(
               'TIPPER_NAME'   => $tipp_username,
//     'RANK'          => $rank,
      'RANK'          => ($rank == 1) ? '<img src="' . $first_rank . '" alt="" />' : $rank,
               'TIPPER_POINTS' => $row['total_points'])
      );
}
$db->sql_freeresult($result);
}
Um weitere Ränge mit Bildern zu versorgen wollte ich es so machen.

unter

Code: Alles auswählen

$first_rank = $phpbb_root_path . "images/formel/goldpokal.gif";
dies

Code: Alles auswählen

$secound_rank = $phpbb_root_path . images/formel/silberpokal.gif";
$third_rank = $phpbb_root_path . images/formel/bronzepokal.gif";
Nur wie erweitere ich diese Zeile:

Code: Alles auswählen

'RANK'          => ($rank == 1) ? '<img src="' . $first_rank . '" alt="" />' : $rank,
um dies:

Code: Alles auswählen

($rank == 2) ? '<img src="' . $secound_rank . '" alt="" />' 
($rank == 3) ? '<img src="' . $third_rank . '" alt="" />'
Bye/2

Verfasst: 13.06.2007 15:00
von Dr.Death
Naja, da musst Du noch eine IF Schleife einbauen....


Ersetze mal die WHILE Schleife mit folgendem:

Code: Alles auswählen

while ($row = $db->sql_fetchrow($result)) 
{ 
	$rank++;
	if ($rank === 1)
	{
		$rank_img = '<img src="' . $first_rank . '" alt="First" />';
	}
	elseif ($rank === 2)
	{
		$rank_img = '<img src="' . $second_rank . '" alt="Second" />';
	}
	elseif ($rank === 3)
	{
		$rank_im = '<img src="' . $third_rank . '" alt="Third" />';
	}
	else
	{
		$rank_img = $rank;
	}	
	$tipp_user_row = get_userdata($row['tipp_user']); 
	$tipp_username = $tipp_user_row['username']; 
	$template->assign_block_vars('top_tippers', array( 
			'TIPPER_NAME'   => $tipp_username,
			'RANK'			=> $rank_img,
			'TIPPER_POINTS' => $row['total_points']) 
	); 
} 

Verfasst: 13.06.2007 15:32
von Dungeonwatcher
Hi großer Meister! 8)

Jupp, das funktioniert schon fast korrekt. Nun wird jetzt dem Platz 2 und Platz 3 das selbe Icon zugeteilt?

Nachtrag:

Fehler gefunden. :)

Es fehlte ein simpler Buchstabe beim Eintrag für den 3. Platz. Nun tut es bestens funktionieren. THNX