Ir para conteúdo
Fórum Script Brasil
  • 0

Formatações


Naty_Za

Pergunta

Gente, to com um problema... tenho um sistema de cadastros de empresas por categoria..

então, os cadastros são listados por categoria, e dentro da sua categoria são mostrados em ordem alfabética..

e então, por exemplo, um cadastro que se chama "Voice Comunicação" vai aparecer no fim da lista, por ser na letra V..

então, eu pensei em fazer um esquema de destaque... tipo, se eu quisesse colocar esse "Voice" em 1º lugar na lista, como eu faria??

colocaria algum comando no cadastro dele????? gostaria também, que além de ficar no inicio, tivesse por exemplo, uma barrinha colorida em volta do cadastro, pra dar mais destaque ainda, sabe???

mas não estou conseguindo.. me ajudem por favor!!!

vou postar o código da minha página que mostra os cadastros!

<?php
$consulta = mysql_query("SELECT sub.titulo, endereco, cidade, estado, tel, email, http FROM cadastros sub inner join classes cs on cs.id_cadastro = sub.id where cs.id_submenu = $id_submenu") or die (mysql_error());

$consulta2 = mysql_query("SELECT * FROM classes WHERE id_submenu = '$id_submenu' ORDER BY servicos, destaque") or die (mysql_error());

$conta = mysql_num_rows($consulta);
if ($conta == 0){
echo "NÃO TEM REGISTROS!";
}else{

while( ($verifica = mysql_fetch_array($consulta)) && ($verifica2 = mysql_fetch_array($consulta2)) ) {

$id_submenu = $verifica2["id_submenu"];
$servicos = $verifica2["servicos"];
$destaque = $verifica2["destaque"];

$id = $verifica["id"];
$titulo = $verifica["titulo"];
$endereco = $verifica["endereco"];
$cidade = $verifica["cidade"];
$estado = $verifica["estado"];
$tel = $verifica["tel"];
$email = $verifica["email"];
$http = $verifica["http"];

echo"
<font face=Verdana, Arial, Helvetica, sans-serif><font size=1><strong><a href=\"http://$http\"
target=\"_blank\" >$titulo</strong></a></strong><br></font>
<i>Serviços: $servicos</i><BR>
Endereço: $endereco<BR>
$cidade - $estado<BR>
Tel: $tel<BR>
Email: <a href=mailto:$email>$email</a><BR>
<img src=$destaque><br>
<BR><BR>
";
}
}
?>

Valeeww pessoal!!!

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0

Cria mais um campo na tabela do tipo INT e nele inclui valores, onde por exemplo 0 é "normal" e 1 é destacado, ai na query você coloca para ordenar primeiro por esse novo campo e depois pelo nome da empresa...acho que essa idéia também funcionaria com um campo do tipo ENUM...

Link para o comentário
Compartilhar em outros sites

  • 0

oi ESerra..

criei o campo "destaque" do tipo INT

E como que ficaria na query então??? to perdida!!!

porque não sei se você viu, eu coloco pra listar não somente da tabela "cadastros", mas sim da tabela "classes" que é a tabela que especifica qual cadastro vai pra qual categoria!

Me ajudaaaa pls...

valeeuu!!

Editado por Naty_Za
Link para o comentário
Compartilhar em outros sites

  • 0

Oi Beraldo..

Então, só que é o seguinte... eu tenho 3 tabelas:

a de "cadastros"

a de "submenu" - que são as categorias

e a de "classes" que é uma tabela que indica qual cadastro vai em qual categoria..

porque assim: eu não coloquei um campo junto no "cadastros" de categoria, porque 1 só cadastro pode estar em várias categorias, e não apenas em 1.

por isso que tem essa 3ª tabela..

então, na hora de mostrar os cadastros por categoria, eu fiz um JOIN.. falando pra mostrar os dados da tabela "cadastos" de acordo com o que está estipulado na tabela "classes"

por isso to me complicando..

não tem como eu fazer um query como me mostrou, porque o campo "destaque" não está na mesma tabela do "nome", tão pouco ela é puxada assim normalmente.. só através do JOIN

então, por isso criei o campo "destaque" na tabela "classes", pra que eu coloque em destaque a empresa somente em 1 categoria que eu determinar, e não em todas em que ela estiver cadastrada, o que aconteceria, se eu colocasse o destaque na tabela dos "cadastros" junto com o "nome"

É confuso né?? por isso to perdida!!!

aiaiaiaia..

pls!! help-me

valeww

Editado por Naty_Za
Link para o comentário
Compartilhar em outros sites

  • 0

Já tentou desta forma?

Select t1.*, t2.* From tabela1 as t1 Inner Join tabela2 as t2 on t1.id = t2.id Order By t1.destaque, t2.nome;

Nesse caso os dados são ordenados segundo campos de duas tabelas. Não sei se funciona. Teste aí e diga se deu certo :)

Abraços,

Beraldo

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...