Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS


Moderador: web

 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 396
Nome: João Paulo
Descrição do site: Site de Ofertas de Produtos da cidade
Sexo: Masculino
Localização: Bahia Luis Eduardo Magalhães

Ordem alfabetica mysql

08-02-2013 19:13

tenho o seguinte codigo uma select que busca o cod sala o nome da turma e do turno ai eu seleciono o desejado ele grava em uma post o cod da sala ai eu quero saber os alunoos que estao nessa sala ai ele da uma select extrai o cod_ger ( codigo geral) e faz uma busca de todos os nome e me traz o resultado so que presiso deixalo em ordem alfabetica ai tenho o seguinte comando

SELECT * FROM cad_ger WHERE cod_ger='".$se4['cod_ger']."' ORDER BY ger_nom ASC

se eu remover o WHERE cod_ger='".$se4['cod_ger']."' ele me traz todos resultados em ordem alfabetica so que se eu deixa que ele me traga somente estes aluno ele nao ordena eles conforme codigo pois acredito que o codigo traz um resultado por ves e apos isso imprime todos os resultado. tem algum codigo que eu colocaria no resultado final antes ou depois do while para ele por em ordem alfabetica?



        $cod_sal = $_POST['ser'];         $selec4 = mysql_query("SELECT * FROM cad_alu WHERE cod_sal='$cod_sal'");             while($se4 = mysql_fetch_array($selec4)){         $cod_alu = $se4['cod_alu'];          $cod_ger = $se4['cod_ger'];                      $selec5 = mysql_query("SELECT * FROM cad_ger WHERE cod_ger='".$se4['cod_ger']."' ORDER BY ger_nom ASC");             while($se5 = mysql_fetch_array($selec5)){                              echo " ", html_entity_decode($se5['ger_nom']), "<br />";             }         }     } } ?> <h1>Lista de Chamada</h1>     <form enctype="multipart/form-data" method="post" name="form">                    <label>*Classe:</label><br />                 <select name="ser">                 <option value=""></option>             <?php                  $selec = mysql_query("SELECT * FROM cad_sal");             while($se = mysql_fetch_array($selec)){         $cod_ser = $se['cod_ser']; $cod_cla = $se['cod_cla']; $cod_tur = $se['cod_tur']; $cod_sal = $se['cod_sal'];         $selec1 = mysql_query("SELECT * FROM cad_ser WHERE cod_ser='$cod_ser'");             while($se1 = mysql_fetch_array($selec1)){                 $nom_ser = html_entity_decode($se1['ser_nom']); }        $selec2 = mysql_query("SELECT * FROM cad_cla WHERE cod_cla='$cod_cla'");             while($se2 = mysql_fetch_array($selec2)){                 $nom_cla = html_entity_decode($se2['cla_nom']); }        $selec3 = mysql_query("SELECT * FROM cad_tur WHERE cod_tur='$cod_tur'");             while($se3 = mysql_fetch_array($selec3)){                 $nom_tur = html_entity_decode($se3['tur_nom']);              echo "<option value=\"$cod_sal\">$nom_ser - $nom_cla - $nom_tur</option>";     } }             ?></select>

0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17682
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Ordem alfabetica mysql

08-02-2013 20:12

Com while dentro de while é bem complicado entender. Usa essa linha

echo mysql_result($query , 0, "coluna");

$query é o SELECT.... você vai definir qual query será usada. coluna, é a coluna selecionada na query. Com essa linha você obtém o resultado.

Com essa linha você pega o valor exato que precisa para as consultas seguintes. Ai evita o uso de tantos whiles.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 396
Nome: João Paulo
Descrição do site: Site de Ofertas de Produtos da cidade
Sexo: Masculino
Localização: Bahia Luis Eduardo Magalhães

Ordem alfabetica mysql

08-02-2013 20:38

ta mas eu fiz so que nao ficou em ordem alfabetica?

echo mysql_result($selec5 , 0, "ger_nom");

pq da outra maneira echo " ", html_entity_decode($se5['ger_nom']), "<br />"; esta vindo o resultado tudo certo so que nao obedece oque esta dentro da select que e o ORDER BY ger_nom ASC que ser para por em ordem alfabetica!

so presiso que esse resultado seja mostrado em ordem alfabetica
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17682
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Ordem alfabetica mysql

08-02-2013 20:43

Cada consulta, se não foi entrelaçada, é independente. Ou seja, o ORDER BY com ASC, funciona para a query principal. O WHERE não diferencia em nada, porque se tem mais de um resultado na query, o resultado é ordenado. Tem a consulta online?
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 396
Nome: João Paulo
Descrição do site: Site de Ofertas de Produtos da cidade
Sexo: Masculino
Localização: Bahia Luis Eduardo Magalhães

Ordem alfabetica mysql

08-02-2013 21:39

assim oque eu presiso e assim: exemplo:

a prof vai na sala e faz a chamada dos alunos o sistema vai montar essa lista de chamada mas como vai montar naquele select ele vai seleciona 1 Serie A Matutino me traz todos os alunos que estao na sala e poem em ordem alfabetica e isso que tenho que fazer?
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17682
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Ordem alfabetica mysql

08-02-2013 21:45

Você tem por exemplo essa consulta

$cod_sal = $_POST['ser']; $selec4 = mysql_query("SELECT * FROM cad_alu WHERE cod_sal='$cod_sal'"); 

Pelo seu código, você quer obter o cod_ger

Então seu código fica assim:

$cod_sal = $_POST['ser']; $selec4 = mysql_query("SELECT * FROM cad_alu WHERE cod_sal='$cod_sal'"); $Cod_ger = mysql_result($selec4 , 0, "cod_ger"); 

Note que a consulta não precisou de while, você obteve o cod_ger, que está armazenado em $Cod_ger

Agora, você tem a outra consulta, que suponho ser para pegar os alunos baseado no cod_ger, então deve fazer isso

$selec5 = mysql_query("SELECT * FROM cad_ger WHERE cod_ger='$Cod_ger' ORDER BY ger_nom ASC"); while($se5 = mysql_fetch_array($selec5)){ echo "colunas..."; } 

Essa consulta acima vai pegar todos cadastros que tenham o cod_ger que foi gerado na consulta anterior, ordenando pelo ger_mom em ordem alfabética crescente.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 396
Nome: João Paulo
Descrição do site: Site de Ofertas de Produtos da cidade
Sexo: Masculino
Localização: Bahia Luis Eduardo Magalhães

Ordem alfabetica mysql

08-02-2013 21:53

assim ficou o codigo so que so me retornou 1 resultado e eu presiso de todos que tiverem na sala selecionada da outra maneira ele me retornava so que nao ordenava em alfabetica?? existe algum codigo para tipo "echo codigoalfabetica ($se5['ger_nom'])" algo assim ai ja resolve o problema?

$cod_sal = $_POST['ser']; $selec4 = mysql_query("SELECT * FROM cad_alu WHERE cod_sal='$cod_sal'"); $Cod_ger = mysql_result($selec4 , 0, "cod_ger");                                   $selec5 = mysql_query("SELECT * FROM cad_ger WHERE cod_ger='$Cod_ger' ORDER BY ger_nom ASC");             while($se5 = mysql_fetch_array($selec5)){                              echo " ", html_entity_decode($se5['ger_nom']), "<br />";         }     } } 

0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17682
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Ordem alfabetica mysql

08-02-2013 21:56

Esse valor obtido na primeira consulta $Cod_ger, tem certeza que na tabela da segunda query, há vários registros com esse mesmo código?
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 396
Nome: João Paulo
Descrição do site: Site de Ofertas de Produtos da cidade
Sexo: Masculino
Localização: Bahia Luis Eduardo Magalhães

Ordem alfabetica mysql

08-02-2013 22:09

e na primeira tabela que existe varios registros com o codigo da sala eu presiso pegar todos registros na primeira select que tiver o codigo da sala = 1 ai eu pego na consulta o os numero dos gerais ? ai vou na segunda consulta e retorno com todos os nomes dos alunos em ordem alfabetica isso que estou tentando te esplica por isso que estou usando o while na primeira !
0
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 396
Nome: João Paulo
Descrição do site: Site de Ofertas de Produtos da cidade
Sexo: Masculino
Localização: Bahia Luis Eduardo Magalhães

Ordem alfabetica mysql

08-02-2013 22:40

o codigo aqui esta certo:

        $cod_sal = $_POST['ser'];         $selec4 = mysql_query("SELECT * FROM cad_alu WHERE cod_sal='$cod_sal'");             while($se4 = mysql_fetch_array($selec4)){         $cod_alu = $se4['cod_alu'];          $cod_ger = $se4['cod_ger'];                      $selec5 = mysql_query("SELECT * FROM cad_ger WHERE cod_ger='$cod_ger' ORDER BY ger_nom ASC");             while($se5 = mysql_fetch_array($selec5)){                              echo " ", html_entity_decode($se5['ger_nom']), "<br />";             }         }     } } 

oque presiso e so isso echo " ", html_entity_decode($se5['ger_nom']), "<br />"; colocar alguma coisa que "CODIGOORDEMALFABETICA(html_entity_decode($se5['ger_nom']))" entende no mais o meu codigo ta funfando a unica coisa e isso que WHERE cod_ger='$cod_ger' ORDER BY ger_nom ASC nao funfa o order by pq essa segunda select esta dentro da primeira entao se ouver 6 resultados na primeira select ele vai fazer 6 novas select2 e dar o resultado em echo " ", html_entity_decode($se5['ger_nom']), "<br />"; criando 6 linhas de codigos desse isso na moral da historia por isso que o ORDER BY ger_nom ASC nao funciona entao presiso de um codigo que coloque o resultado final em alfabetica pegando esses resultados tudo em 1 unica variavel e vendo a primeira letra desse nome e trazendo em ASC ordem alfabetica so isso sege a imagem da histrutura do BD e um BD de 115 tabelas isso ela no projeto so que ele nao esta todo pronto a parte que esta pronto segue em img!!!

http://img189.imageshack.us/img189/6167/bancorp.jpg
0
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 396
Nome: João Paulo
Descrição do site: Site de Ofertas de Produtos da cidade
Sexo: Masculino
Localização: Bahia Luis Eduardo Magalhães

Ordem alfabetica mysql

08-02-2013 23:49

ja resolvi fiz meio uma segunda alternativa na tabela adicionei o campo alu_nom quando eu cadastrar o aluno em 1 sala ele copia o nome do aluno do cadastro geral e grava na tabela cad_alu ai o codigo da primeira select add o Order BY alu_nom ASC ai os codigo (cod_ger) ja sai em ordem alfabetica que no fim do da o resultado com todos alunos em ordem alfabetica

Vlw
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17682
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Ordem alfabetica mysql

09-02-2013 09:30

Boa.
0
A melhor hospedagem para o seu site HostGator!

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado