Ir para conteúdo
Fórum CódigoFonte.net
Entre para seguir isso  
pcjardim

ordenar vetor?

Recommended Posts

Tenho o código a seguir:

<?
include "config.php";
$sql = "select * from cat";
$consulta = mysql_query($sql);?>
<table border="1">
    <tr>
        <td width="100"><strong>
            Nome
        </td></strong>        
        <td><strong>
            Qtde
        </td></strong>
    </tr><?
while ($linha = mysql_fetch_array( $consulta )) 
{
    $codigo=$linha["codigo_cat"]; 
    $categoria=$linha["nome_cat"];
    ?> <br /> <? 
    $sql1="select * from pessoa";
    $consulta1 = mysql_query($sql1);
    $n=0; 
    while ($linha1 = mysql_fetch_array($consulta1))
    {
        $cod=$linha1["codigo_cat"]; 
        if ($cod==$codigo)
        {
            $n++;            
        }        
    }
    $vetor=array($categoria,$n);
    $qtde=$vetor[1]; ?>
        <tr>
            <td width="100"><?
                echo $vetor[0];?>
            </td>        
            <td align="center"    ><?
                echo $vetor[1];?>
            </td>
        </tr><?        
}?>
    </table>

ele me mostra o resultado numa tabela assim:

Nome: Qtde:

Uma 1

Duas 2

Tres 3

O resultado é obtido através de duas tabelas, Cat que é a tabela de categorias e Pessoa que é a tabela de pessoas, portanto na tabela pessoa tem 1 pessoa na categoria "uma", 2 pessoas na categoria "duas", e três pessoas na categoria "três". Preciso que ele imprima ordenado por quantidade, decrescente e não estou conseguindo fazer isso. Podem me ajudar?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Na verdade não é o meu caso porque não tenho um campo com a qtde, essa qtde é a contagem de registros associado à categoria. Porém, resolvi da seguinte forma:

$result=mysql_query("SELECT COUNT(pessoa.codigo_pessoa) as quantidade,cat.codigo_cat as categoria FROM pessoa,cat WHERE 
pessoa.codigo_cat=cat.codigo_cat GROUP BY cat.codigo_cat ORDER BY quantidade DESC");

Obrigado pela Atenção.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
Entre para seguir isso  

×
×
  • Criar Novo...