Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

SlyX

Matriz (Organizar)

Recommended Posts

minha matriz recebe:

 

PHP [/tr][tr]<?php

 

 

$top[$linhas][1] = $row["login"];

$top[$linhas][2] = $row["clan"];

$top[$linhas][3] = $row["frags"];

$top[$linhas][4] = $scoretotal;

$top[$linhas][5] = $media;

 

 

?>

[/tr]

 

depois ela mostra:

 

PHP [/tr][tr]<?php

 

 

for ($i=0;$i<15;$i++) {

$rank++;

if ($rank < 11 ) { $rr = '<b>'.$rank.'</b>'; } else { $rr = $rank; }

echo '<tr><td>'.$rr.'</td><td>'.$top[$i][1].'</td><td>'.$top[$i][2].'</td><td><center>'.$top[$i][3].'</td><td align=right>'.$top[$i][4].'</td><td align=right>'.$top[$i][5].'</td></tr>';

}

 

 

?>

[/tr]

 

......................

 

eu queria q dps dela receber tudo.. ela ficace na ordem da MAIOR media para a MENOR..

 

eu tentei uma coisa que nao deu certo:

PHP [/tr][tr]<?php

 

 

$b = true;

while($b){

$aux = -1;

for ($i=0;$i<$top.$linhas;$i++) {

if ($top[$i][5] > $top[$i+1][5]){

$aux = $top[$i][5];

$top[$i][5] = $top[$i+1][5];

$top[$i+1][5] = $aux;

}

}

if($aux == -1){

$b = false;

}

}

 

 

?>

[/tr]

 

 

 

alguem pode me ajudar?

como q faço para organizar a matriz por ordem de maior media? ( $top[$linhas][5] )

Compartilhar este post


Link para o post
Compartilhar em outros sites

Insira a seguinte funçãofunction array_csort() { //coded by Ichier2003 $args = func_get_args(); $marray = array_shift($args); $msortline = "return(array_multisort("; foreach ($args as $arg) { $i++; if (is_string($arg)) { foreach ($marray as $row) { $sortarr[$i][] = $row[$arg]; } } else { $sortarr[$i] = $arg; } $msortline .= "\$sortarr[".$i."],"; } $msortline .= "\$marray));"; eval($msortline); return $marray; }E depois execute o seguinte codigo$top = array_csort($top,5,SORT_DESC);

Warning: array_multisort(): Argument #1 is an unknown sort flag in /home/hh/public_html/quake/cbca/topfrag.php(156) : eval()'d code on line 1ainda nao foi desta vez eheh :(

Compartilhar este post


Link para o post
Compartilhar em outros sites

nova url do pastebin:

 

http://www.pastebin.com/95246

 

 

ps: codigo completo:

 

PHP [/tr][tr]

<?

//Listar Fragers

$comando = "SELECT * FROM `players` order by `frags` desc limit 0,40";

$reee = mysql_query($comando);

$linhas=0;

if (mysql_num_rows($reee) > 0)

{

while ($row = mysql_fetch_array($reee, MYSQL_BOTH)) {

$score1 = 0;

$score2 = 0;

$scoretotal = 0;

for ($i=0;$i<40;$i++) {

$comando = "SELECT * FROM `resultados` WHERE `idjogo` = '$i' AND `idround` = '1' AND `player1c1`='$row[login]' OR `idjogo` = '$i' AND `idround` = '1' AND `player2c1`='$row[login]' OR `idjogo` = '$i' AND `idround` = '1' AND `player3c1`='$row[login]' OR `idjogo` = '$i' AND `idround` = '1' AND `player4c1`='$row[login]' OR `idjogo` = '$i' AND `idround` = '1' AND `player1c2`='$row[login]' OR `idjogo` = '$i' AND `idround` = '1' AND `player2c2`='$row[login]' OR `idjogo` = '$i' AND `idround` = '1' AND `player3c2`='$row[login]' OR `idjogo` = '$i' AND `idround` = '1' AND `player4c2`='$row[login]'";

$re = mysql_query($comando);

if (mysql_num_rows($re) > 0) {

$score1 = mysql_result($re, 0, "score1");

$score2 = mysql_result($re, 0, "score2");

$scoretotal = $scoretotal+$score1+$score2;

}

$comando = "SELECT * FROM `resultados` WHERE `idjogo` = '$i' AND `idround` = '2' AND `player1c1`='$row[login]' OR `idjogo` = '$i' AND `idround` = '2' AND `player2c1`='$row[login]' OR `idjogo` = '$i' AND `idround` = '2' AND `player3c1`='$row[login]' OR `idjogo` = '$i' AND `idround` = '2' AND `player4c1`='$row[login]' OR `idjogo` = '$i' AND `idround` = '2' AND `player1c2`='$row[login]' OR `idjogo` = '$i' AND `idround` = '2' AND `player2c2`='$row[login]' OR `idjogo` = '$i' AND `idround` = '2' AND `player3c2`='$row[login]' OR `idjogo` = '$i' AND `idround` = '2' AND `player4c2`='$row[login]'";

$re = mysql_query($comando);

if (mysql_num_rows($re) > 0) {

$score1 = mysql_result($re, 0, "score1");

$score2 = mysql_result($re, 0, "score2");

$scoretotal = $scoretotal+$score1+$score2;

}

$comando = "SELECT * FROM `resultados` WHERE `idjogo` = '$i' AND `idround` = '3' AND `player1c1`='$row[login]' OR `idjogo` = '$i' AND `idround` = '3' AND `player2c1`='$row[login]' OR `idjogo` = '$i' AND `idround` = '3' AND `player3c1`='$row[login]' OR `idjogo` = '$i' AND `idround` = '3' AND `player4c1`='$row[login]' OR `idjogo` = '$i' AND `idround` = '3' AND `player1c2`='$row[login]' OR `idjogo` = '$i' AND `idround` = '3' AND `player2c2`='$row[login]' OR `idjogo` = '$i' AND `idround` = '3' AND `player3c2`='$row[login]' OR `idjogo` = '$i' AND `idround` = '3' AND `player4c2`='$row[login]'";

$re = mysql_query($comando);

if (mysql_num_rows($re) > 0) {

$score1 = mysql_result($re, 0, "score1");

$score2 = mysql_result($re, 0, "score2");

$scoretotal = $scoretotal+$score1+$score2;

}

}

$media = $row["frags"] / $scoretotal;

$top[$linhas][1] = $row["login"];

$top[$linhas][2] = $row["clan"];

$top[$linhas][3] = $row["frags"];

$top[$linhas][4] = $scoretotal;

$top[$linhas][5] = $media;

$linhas++;

}

mysql_free_result($reee);

} else {

echo "Nenhum player encontrado";

}

 

$i=0;

function array_csort() {

$args = func_get_args();

$marray = array_shift($args);

$msortline = "return(array_multisort(";

foreach ($args as $arg) {

$i++;

if (is_string($arg)) {

foreach ($marray as $row) {

$sortarr[$i][] = $row[$arg];

}

} else {

$sortarr[$i] = $arg;

}

$msortline .= "\$sortarr[".$i.],";

}

$msortline .= "\$marray));";

eval($msortline);

return $marray;

}

 

$top = array_csort($top,5,SORT_DESC);

 

$rank = 0;

for ($n=0;$n<15;$n++) {

$rank++;

if ($rank < 11 ) { $rr = '<b>'.$rank.'</b>'; } else { $rr = $rank; }

echo '<tr><td>'.$rr.'</td><td>'.$top[$n][1].'</td><td>'.$top[$n][2].'</td><td><center>'.$top[$n][3].'</td><td align=right>'.$top[$n][4].'</td><td align=right>'.$top[$n][5].'</td></tr>';

}

?>

[/tr]

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.