mysql reihen nummer

benni miles

Mitglied
Hi Leute,

hab ein kleines Problem und zwar möchte ich die Reihen Nummer eines Eintrages geordnet nach einer Zelle (nicht ID) ausgeben wo der Name gleich dem angegeben Namen ist. Meine Frage ist gibt es hierfür einen mysql Befehl. mysql_num_rows hilft mir in dem Sinn nichts weil er ja nur 1 ausgibt weil genau dieser eine Eintrag der Abfrage entspricht - ich bräuchte allerdings die Reihen Nummer sprich der Eintrag befindet sich in der 6ten Reihe. Hoff es versteht jemand was ich meine :)

lg
 
Ich glaube nicht, dass es dafuer einen Befehl gibt. Da wirst Du wahrscheinlich mit einer Schleife selbst feststellen muessen wo der Eintrag liegt.
Die Frage ist aber auch warum Du das machen willst. Wenn Du uns das mitteilst koennten wir Dir vielleicht mit Alternativen weiterhelfen.
 
Hab es bereits gelöst

PHP:
        $sql_rangliste = "SELECT nickname FROM rangliste ORDER BY zaehler DESC";
	$result_rangliste = mysql_query($sql_rangliste);
	$nickname = "bla";
	
	$i = 0;

	while ( $data = mysql_fetch_assoc($result_rangliste) )
	{	
		$i++;
		if ( $nickname == $data[nickname] )
		{
			echo "$i";
			exit;
		}
	}

Geht das irgendwie "schöner" auch?

lg
 
Ich will einen Rang eines bestimmten Users anzeigen in dieser Form ---> Dein Rang ist: "Ausgabe". Mit dem oben geposteten Teil funktioniert es eigentlich recht gut. Hab mir gedacht das es so am einfachsten geht?

lg
 
Du koenntest die Anzahl User feststellen die einen hoeheren Rang (also hier wo das Feld zaehler hoeher ist) haben. Diese Anzahl plus 1 ergibt dann den Rang des Users.

Das kannst Du entweder ueber 2 SQL-Abfragen regeln, oder aber ueber eine verschachtelte SQL-Abfrage.
 
Zurück