memberscript nach status sortieren!

Rambo51

Erfahrenes Mitglied
hallo

ich habe hier ein memberscript, nun möchte ich das die staten(status) sortiert werden.
also das die leader ganz oben stehen, dann die fullmember, dann die Recruiten, usw...

ich will das mit diesem befehl lösen
PHP:
mysql_query("select * from $tabelle where status ='leader'")
dann...
mysql_query("select * from $tabelle where status ='fullmember'")
usw...

nun hänge ich aber fest. irgendwie bekomm ich das nicht mit den tabellen hin das die untereinander aufgeführt werden :confused:

hier mal der teil der die leader ausgibt:
PHP:
<?php 
} else { 

        echo "
<table align=\"center\" width=\"100%\" bgcolor=\"#000000\" cellspacing=\"1\" cellpadding=\"0\" border=\"0\"  bordercolor=\"#000000\">

<tr>
    <td>Nickname:</td>
    <td>Status:</td>
	<td>Anzeigen:</td>
	</tr></table><p>
";
  $result = mysql_query("select * from $tabelle where status ='leader'"); 

  if ($num = mysql_num_rows($result)) { 
    for($i=0;$i < $num; $i++) { 
      $memberid = mysql_result($result,$i,"memberid"); 
      $usr = mysql_result($result,$i,"usr"); 
	  $status = mysql_result($result,$i,"status"); 

echo "
	  <table align=\"center\" width=\"100%\" bgcolor=\"#FFFFFF\" cellspacing=\"1\" cellpadding=\"0\" border=\"0\"  bordercolor=\"#000000\">
<tr>
<td>$usr</td>
<td>$status</td>
<td><A href=\"$PHP_SELF?action=profil&memberid=$memberid\">[ Profil ]</A></td>
</tr></table>
";
    } 
  } else echo "<li>keine Member<p>"; 
}
?>


kann mir jemand das so zusammen setzen, das ich schon mal die leader und fullmember untereinander ausgeben kann?

Wäre wirklich super nett wenn das jemand für mich machen könnte.

MFG Rambo51
 
Wenn du beim Status Zahlen verwenden würdest, also z.B.
1 = Normaluser
2 = Fullmember
3 = leader
könntest du ganz einfach mit ORDER BY arbeiten (...ORDER BY `status` DESC)

Dannach die Daten mit einer while-Schleife ausgeben
 
fanste hat gesagt.:
Wenn du beim Status Zahlen verwenden würdest, also z.B.
1 = Normaluser
2 = Fullmember
3 = leader
könntest du ganz einfach mit ORDER BY arbeiten (...ORDER BY `status` DESC)

Dannach die Daten mit einer while-Schleife ausgeben


ok erst einmal danke für deine antwort!

kannst du mir vielleicht sagen wie das mit der while schleife funktioniert, habe mir die While schleife noch nicht angeschaut.

-------------------------------------------------------------

am liebsten würde ich es aber mit der where abfrage machen, weil ich dann immer verschiedene tabellen habe
 
hmm ok aber wie kann ich das machen das er dann die eins als Leader erkennt?

Gruss Rambo51

P.S.: @ die anderen: Wenn ihr wisst wie man das mit den Tabellen macht dann sagt mir das bitte weil ich eigentlich sowas suche!
 
Entweder du legst in deiner Tabelle eine neue Spalte an (StatusName), welche dann die Bezeichnung des Status beinhaltet (z.B. Leader).

Oder du schreibst die "Übersetzung" direkt in dein Script (unmittelbar vor der Ausgabe):
PHP:
switch($row["Status"]) {
  case 1:
    $statName = "Leader";
    break;
  case 2:
    $statName = "Fullmember";
    break;
  case 3:
    $statName = "Trial";
    break;
  // usw....
}
Dann kannst du als Status einfach die Variable $statName ausgeben.

Ach und bevor ichs vergesse: Neben Groß- und Kleinschreibung wird in diesem Forum auch auf korrekte Zeichensetzung (Punkt, Komma, etc.) geachtet.
 
Zuletzt bearbeitet:
Ich hatte oben bei meinem Code dem Leader die 3 gegeben. soll er die 1 Haben, musst du
1. Die Zahlen tauschen
(1 = leader
2 = Fullmember
3 = Normaluser)
2. aus DESC ASC machen
 
Ok, erst einmal Danke an alle die mir geholfen haben.

Nun habe ich aber das problem, das ich den code nicht zusammen gewürfelt bekomme.
Wäre super wenn mir das einer zusammen setzen könnte. :-)

Gruss Rambo51
 
Probier es mal so:
PHP:
} else {

	echo "
	  <table align=\"center\" width=\"100%\" bgcolor=\"#000000\" cellspacing=\"1\" cellpadding=\"0\" border=\"0\"  bordercolor=\"#000000\">
		<tr>
	    	<td>Nickname:</td>
	    	<td>Status:</td>
	    	<td>Anzeigen:</td>
	    </tr>
	  </table>
	  <p>";
	#connecten
	mysql_connect(********);
	mysql_select_db(****);

	#Abfrage
	$sql = "SELECT * FROM $tabelle ORDER BY status ASC";
	$result = mysql_query($sql) or die(mysql_error());
	if(mysql_num_rows($result) > 0)
	{
		#Ausgeben
		while($row = mysql_fetch_assoc($ersult))
		{
			switch($row["status"])
			{
		  		case 1:
		    		$statName = "Leader";
		    		break;
		  		case 2:
		    		$statName = "Fullmember";
		    		break;
		  		case 3:
		    		$statName = "Trial";
		    		break;
			}

			echo "
		      <table align=\"center\" width=\"100%\" bgcolor=\"#FFFFFF\" cellspacing=\"1\" cellpadding=\"0\" border=\"0\"  bordercolor=\"#000000\">
				<tr>
					<td>".$row['usr']."</td>
					<td>$statName</td>
					<td><A href=\"$PHP_SELF?action=profil&memberid=".$row['memberid']."\">[ Profil ]</A></td>
				</tr>
			  </table>";
		}
	}
	else
	{
		echo "<li>keine Member<p>";
	}
}
?>
 
Vielen Dank. Klappt super!

Großes Lob an das Forum, in fast keinem anderen bekommt man so schnelle und so gute Hilfe.
 
Zurück