Ir para conteúdo
joaomart

Cosulta em MySql com PHP

Recommended Posts

Olá. Preciso fazer uma consulta MySql em PHP para listar uma espécie de ranking, porém quando uso o código para listar por ordem decrescente ele lista da seguinte maneira:

80

70

30

100

 

E preciso que ele liste assim:

100

80

70

30

 

O código PHP:

<?php
include("conexao.php");

$sql = mysqli_query($conexao, "SELECT * FROM ranking ORDER BY `pontuacao` DESC") or die( mysqli_error($conexao) );

while($aux = mysqli_fetch_assoc($sql)) { 
    echo "<tr>"; 
    echo "<td>".$aux["nome"]."</td>"; 
    echo "<td>".$aux["data"]."</td>"; 
    echo "<td>".$aux["pontuacao"]."%</td>"; 
}
?>

Agradeço a quem ajudar

Compartilhar este post


Link para o post
Compartilhar em outros sites

Isso está ocorrendo pois o conteúdo está sendo ordenado como texto, provavelmente o campo no banco é do tipo VARCHAR(ou outro que armazene texto).

 

Você pode corrigir o problema alterando o tipo do banco para INTEGER ou DECIMAL dependendo do tipo de valor que você armazena.

 

Uma alternativa menos eficiente seria converter o valor do campo para um tipo numérico na ordenação.

SELECT * FROM ranking ORDER BY CAST(`pontuacao` AS UNSIGNED) DESC

Substitua UNSIGNED por SIGNED caso o campo possa possuir valores negativos ou DECIMAL caso o campo possuir casas demais.

  • Gostei 1

Compartilhar este post


Link para o post
Compartilhar em outros sites
11 horas atrás, HwapX disse:

Isso está ocorrendo pois o conteúdo está sendo ordenado como texto, provavelmente o campo no banco é do tipo VARCHAR(ou outro que armazene texto).

 

Você pode corrigir o problema alterando o tipo do banco para INTEGER ou DECIMAL dependendo do tipo de valor que você armazena.

 

Uma alternativa menos eficiente seria converter o valor do campo para um tipo numérico na ordenação.


SELECT * FROM ranking ORDER BY CAST(`pontuacao` AS UNSIGNED) DESC

Substitua UNSIGNED por SIGNED caso o campo possa possuir valores negativos ou DECIMAL caso o campo possuir casas demais.

Era realmente isso. Funcionou bem aqui, valeu!

  • Gostei 1

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

  • Conteúdo Similar

    • Por Loconarrativo
      Bom, no meu form, eu peço para o cliente digitar um valor (esse valor em reais), mas para continuar eu preciso me certificar que a variável que contem o valor, tenha 16 dígitos ao total, então se a pessoa digita uma 1000.00, eu preciso completar com 9 zeros a esquerda (fica assim 0000000001000.00), para eu saber quantos dígitos tem na variável, eu faço
      $i = strlen( $_POST['valor']);   ai eu faço
      $u = 8 - $i ; eu tenho o numero de zeros que preciso colocar a esquerda, mas como eu transformo isso em vários zeros? 
    • Por leandrosv
      Boa tarde pessoal, uma dúvida somente,se conseguirem  me responder ficarei grato!.
      Programo em php há 6 meses. Até o momento foquei em aprender e fazer para  mim.
      Peguei meu primeiro projeto, para um amigo, porém design, css e javascript não é meu forte, falta criatividade e aprender bastante sobre o JS.
      A duvida é a seguinte: Comprei um tema no themeforest.net à escolha dele(amigo), e o tema veio com puglins woocommerce, a minha dúvida é se posso hospedar e utilizar normalmente no site esses plugins sem usar o sistema wordpress. Editei o código js e css do que não me interessa e está funcionando legal. A dúvida mesmo, unica dúvida é se posso e vou conseguir rodar meu site em uma hospedagem normal sem o sistema wordpress.
      Obrigado!
      **moderadores e administradores do fórum, caso seja aqui um tópico errado, perdão, procurei mas não achei nada a respeito do assunto.
    • Por Marcos Bellini
      Olá amigos, alguém já fez integração do Frenet (frenet.com.br) utilizando PHP?
       
      Vi que existe muitos módulos prontos para Magento e etc, porém quero integrar com minha loja, código próprio e estou tendo dificuldades.
       
      Alguém já fez o mesmo?
    • Por M. Alberto
      O que preciso alterar para acessar meu banco de dados remotamente?
       
      Tenho o IP e outros dados... como faço com este código?
       
      <?php $link = mysql_connect('localhost', 'USUARIO_NOME', 'SENHA_ACESSO'); if (!$link) { die('Não conseguiu conectar: ' . mysql_error()); } $db_selected = mysql_select_db('BANCODEDADOS_NOME', $link); if (!$db_selected) { die ('Não pode selecionar o banco : ' . mysql_error()); } $rst_pedidos=mysql_query("SELECT * FROM pedidosgarotao WHERE impresso='nao' ORDER BY id",$link); $num_pedidos=mysql_num_rows($rst_pedidos); if ($num_pedidos==0) { ?>  
    • Por M. Alberto
      Estou realizando a migração de meu site que utiliza um banco de dados em mySQL PHP porém estou obtendo erro.
       
      Criei o banco de dados e fiz upload dos arquivos, porém agora neste servidor não roda de maneira alguma. Alguém poderia me ajudar ?
×

Informação importante

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