Ankündigung

Einklappen
Keine Ankündigung bisher.

Seite zu langsam, Code kürzen

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Seite zu langsam, Code kürzen

    Ist es möglich folgenden Code in nur einer while Schleife zu realisieren ?


    Code:
    					
    $u = mysql_query("SELECT upunkte as a from user group by upunkte order by a desc");
    
    while(list($upunkte)=mysql_fetch_row($u))
    {
     $pen=mysql_query("select count(nickname) from user where upunkte='".$upunkte."'");
            while(list($count)=mysql_fetch_row($pen))
    		{
    		   if($aktivlink == "")
    			{
    			  print "<tr><td align='center' bgcolor='#cccccc' rowspan='$count'>".$i.".</td>";
    			}
    			else
    			{
    			  $i--;	
    			}
    													
       $test2=mysql_query("select nickname,aktivlink from user where upunkte='".$upunkte."'");
    	  while(list($name,$aktivlink)=mysql_fetch_row($test2))
    		{
    		  if($aktivlink == "")
    		    {
    		     if ($name==$_SESSION['nickname'])
    			{ 
    			  print "<td align='center' bgcolor='#ff0000'><a name='".$name."'></a>".$name."</td>"; 
    		          print "<td align='center' bgcolor='#ff0000'>".$upunkte."</td></tr>"; 
    			}
    			else
    			{ 
    			print "<td align='center' bgcolor='#cccccc'><a name='".$name."'>".$name."</td>"; 
    			print "<td align='center' bgcolor='#cccccc'>".$upunkte."</td></tr>";
    			}
    		   }
    			else
    			...
    		}
    Mit 240 Usern ist die Seite ziemlich langsam geworden. Vlcht gibt es eine Möglichkeit das etwas zu kürzen.
    Es handelt sich hierbei um eine Rangliste.
    Die User haben Punkte, nach denen sich ihr Platz in der Tabelle orientiert. In der ersten Schleife werden die User zusammen gefasst, die gleiche punktzahl haben. Inder zweiten wird die Gesamtzahl der User ausgerechnet, damit eine exakte Platzierung Möglich ist (Wenn es zwei erste Plätze gibt ist der nächste ein dritter Platz usw.).
    In der nächsten SChleife werden dann die Nicknames selber ausgegeben zusammen mit den Punkten. Ist der entsprechende User eingeloggt, wird sein Name Rot umrahmt . Es werden nur Leute angezeigt die schon ihren Aktivlink angeklickt haben.


  • #2
    Damit dir jemand hilfreich antwortet, musst du den Code beschreiben.

    Kommentar

    Lädt...
    X