php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2004-2

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 18.11.2004, 23:28  
Benutzer
 
Registriert seit: 18.11.2004
Beiträge: 56
Gumfuzi
Standard Arrays nachträglich (Inhalte) zählen und sortieren

Hallo Leute,

ich hoffe, daß ihr mir da helfen könnt - folgender Code-Teil:
Code:
	$sql = "SELECT * FROM " . iNA_GAMES . "
		ORDER BY game_name";
	if( !$result = $db->sql_query($sql) )
	{
		message_die(GENERAL_ERROR, $lang['no_game_data'], "", __LINE__, __FILE__, $sql);
	}
	$game_count = $db->sql_numrows($result);
	$game_rows = $db->sql_fetchrowset($result);

	for($i = 0; $i < $game_count; $i++)
	{
		$game_id = $game_rows[$i]['game_id'];
		$game_name = $game_rows[$i]['game_name'];

		if ($game_rows[$i]['reverse_list'])
		{
			$list_type = 'ASC';
		}
		else
		{
			$list_type = 'DESC';
		}

		$sql = "SELECT * FROM " . iNA_SCORES . " 
         WHERE game_name = '" . $game_name . "' 
         ORDER BY score $list_type, date ASC";
		 if(!$result = $db->sql_query($sql))
		{
			message_die(GENERAL_ERROR, $lang['no_score_data'], "", __LINE__, __FILE__, $sql);
		}
		$score_info = $db->sql_fetchrow($result);
		$best_score[$i] = $score_info['score'];
		$best_player = $score_info['player'];
		$arr[$best_player] = $arr[$best_player] + 1;

		$template->assign_block_vars("game", array(
			"BEST_SCORE" => $best_score[$i],
			"BEST_PLAYER" => $best_player,
			"NAME" => $game_name)
	);
	}
Ich habe eine Liste mit HiScores pro Spiel, wo ich nun wissen will, welcher Spieler wie oft einen HiScore (die Meisten bzw. manchmal die wenigsten Punkte) hat.
Der o.a. Code liest bereits die Besten Spieler pro Spiel aus und gibt diese nach Spielnamen sortiert aus (in einer Template im phpBB-Board).

Ich will aber eben keine Auflistung, sondern einen Array, der von 1 bis x Spieler den Namen des Spielers und die Anzahl der HiScores wiedergibt - bsp:
$name[1] = Name1
$name[2] = Name2
$name[3] = Name3
...

$punkte[1] = 100
$punkte[2] = 96
$punkte[3] = 91
...

... sodaß ich mit einer Schleife die komplette Liste (sortiert) ausgeben kann.

Wer kann mir da bitte helfen, ich brüte schon seit Tagen darüber und komme aber zu keiner Lösung.

Danke im voraus für eure Hilfe!!!!

P.S.: natürlich sind nicht immer die gleichen Spieler in der Liste vertreten
Gumfuzi ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 19.11.2004, 13:56  
Gast
 
Beiträge: n/a
Standard

Warum kombinierst du die Arrays nicht einfach in 1 Mehrdimensionales?
http://de.php.net/array_push
http://de.php.net/manual/de/function.array.php
http://de.php.net/manual/de/function.arsort.php
 
Alt 19.11.2004, 22:15  
Benutzer
 
Registriert seit: 18.11.2004
Beiträge: 56
Gumfuzi
Standard

Mir fehlen da leider noch entscheidene Kenntnisse...

Ich habe ein Array, wo nun die verschiedenen SPieler drinstehen, nun will ich zuerst die Häufigkeit jedes Spielers zählen lassen und das Ergebnis dann nach der Häufigkeit sortieren.

Es gibt ja einen Befehl (array_count_values) wo man bestimmte (vorgegebene) array-Werte zählen kann, nur wie sage ich es dem Programm, welche Namen gezählt werden sollen?

... oder gibt es wo ein fertiges Skript, das soetwas kann?
Gumfuzi ist offline  
Alt 20.11.2004, 00:00  
Benutzer
 
Registriert seit: 18.11.2004
Beiträge: 56
Gumfuzi
Standard

Ich habe es nun:
PHP-Code:
$zaehle array_count_values($best_player);
while(list(
$key$val) = each($zaehle))
{
    
$template->assign_block_vars("hiscore", array(
    
"NAME" => $key,
    
"ANZ" => $val
    
));


trotzdem danke!
Gumfuzi ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
eindimensionale arrays sortieren webazubi PHP Tipps 2007 5 23.03.2007 18:11
Sortieren eines Arrays mittels Funktion ? madSoul PHP Tipps 2007 16 22.02.2007 11:49
Arrays sortieren, Bezeichnung, Preis Ticos PHP Tipps 2006 4 07.09.2006 19:37
Fehlermeldung beim Sortieren meines Arrays... GELight PHP Tipps 2006 5 27.04.2006 22:08
Arrays alphabetisch sortieren seven-12 PHP Tipps 2007 4 17.11.2005 14:33
"Doppelte" Inhalte eines Arrays entfernen. PHP Tipps 2005-2 1 10.10.2005 08:55
Sortieren von Arrays mit mehr als 2 Dimensionen (Teil 2) Buhmann PHP-Fortgeschrittene 4 12.07.2005 14:03
Sortieren von Arrays mit mehr als 2 Dimensionen PHP-Fortgeschrittene 8 05.07.2005 16:48
[Erledigt] sortieren von arrays aus mysql Datenbanken 7 28.04.2005 21:53
5 assosiative arrays gleichzeitig sortieren PHP Tipps 2004-2 2 13.12.2004 14:07
ordner inhalte sortieren PHP Tipps 2004-2 1 28.11.2004 13:56
Mehrdimensionale Arrays sortieren Borlox PHP Tipps 2004 5 23.09.2004 14:52

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
array_count_values mehrdimensional, array_count_values sortieren, php array sortieren order by sql, http://www.php.de/php-tipps-2004-2/12575-arrays-nachtraeglich-inhalte-zaehlen-und-sortieren.html, array nach häufigkeit sortieren, php werte zählen von mehrere arrays, array aus sql php zählen, php array häufigkeit zählen sortieren, php mysql array nachträglich sortieren, array nachträglich sortieren php, php liste zählen, php list zählen, array_count_values array sort, array nach gleichen key zählen, array_count_values multidimensionales, while ( list sortieren php, sort by array_count_values, array_count_values() mehrdimensional, php array häufigkeit, array häufigkeit sorteiren

Alle Zeitangaben in WEZ +2. Es ist jetzt 23:41 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.