Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #57 da revista programar. Faz já o download aqui!

Johny

Como ordenar alfabeticamente em php

Mensagens Recomendadas

Johny    1
Johny

Boas pessoal,

Tenho uma base de dados em mysql e la tem um campo chamado nome em que estao varios nomes separados por virgulas gostava de saber como posso fazer em codigo php com que ele ordene alfabeticamente os nomes ja coloquei isto $texto = str_replace(',', '<br />', $texto); para retirar as , e colocar um <br /> agora gostava de ordenar alfabeticamente.

Alguem me pode dar uma ajudinha?

Cumprimentos,

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
scorch    19
scorch

Em vez de substituíres as vírgulas, fazes algo como:

//Assim $texto passa a ser um array com os nomes todos separados
$texto = explode(",", $texto);

//Com esta função ordena os nomes
$texto = sort($texto, "SORT_STRING");

//Opcional, com este código mostra os nomes ordenados
foreach ($texto as $indice => $nome) {
    echo $nome."<br />"
}

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
scorch    19
scorch

Tenta assim:

//Assim $texto passa a ser um array com os nomes todos separados
$texto = explode(",", $texto);

//Com esta função ordena os nomes
$texto = sort($texto, "SORT_STRING");

//Opcional, com este código mostra os nomes ordenados
foreach ($texto as $indice => $nome) {
    echo $nome."<br />";
}

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Johny    1
Johny

O codigo que tenho é este nao sei o k esta mal  :P

	while ($line = mysql_fetch_array($consulta)) {
$texto	= $line["membrosregistados"];
//Assim $texto passa a ser um array com os nomes todos separados
$texto = explode(",", $texto);

//Com esta função ordena os nomes
$texto = sort($texto);

//Opcional, com este código mostra os nomes ordenados
foreach($texto as $indice => $nome) {
    echo "-".$nome."<br />";
}}
?>

Se puderes me ajudar agradecia

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
scorch    19
scorch

Tenta:

        while ($line = mysql_fetch_array($consulta)) {
        $texto  = $line["membrosregistados"];
        //Assim $texto passa a ser um array com os nomes todos separados
$texto = explode(",", $texto);

//Com esta função ordena os nomes
$texto = sort($texto);

//Opcional, com este código mostra os nomes ordenados
foreach($texto as $key => $value) {
    echo "-".$nome."<br />";
}}

Se não for isto o problema, não sei o que pode ser. :P

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Johny    1
Johny

Ja consegui resolver  :D

Ficou assim e ja funciona obrigado  :P

while ($line = mysql_fetch_array($consulta)) {
        $texto  = $line["membrosregistados"];
}
$nomes = explode(",", $texto);
sort($nomes);
foreach ($nomes as $key => $val) {
    echo "-". $val ."<br />";
}
?>

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade