Ir ao conteúdo

Posts recomendados

Postado

BOM DIA 🙃



Software em manutenção = vai aparecer na tabela como "Manutenção" e com a cor vermelha.

Software disponível = vai aparecer na tabela como "Disponível" e com a cor verde.

 

Ou seja, eu quero apresentar em uma tabela, 1 dado só que com 2 valores diferentes em uma única célula. E esse dado não estará lá, já que terá 2 valores diferentes. No caso, esse dado seria alocado posteriormente manualmente. Por exemplo:
Eu tenho um software. Quando eu tivesse que colocar meu software em manutenção, eu vou no meu painel de gerenciamento do site, mudar o status de "Disponível" para "Manutenção".

 

Aí, que entra as perguntas:
1 - Eu não sei se estou certo em deixar a célula vazia. Creio eu que sim, aí no caso, só bastaria editar a cor da letra dentro da célula por CSS3.

2 - Se estou certo em deixar a célula vazia e certo em editar a cor da letra em CSS3. Como edito a mesma célula com 1 dado que terá as cores das letras diferentes? Até onde eu sei, não tem como.

3 - Para editar uma célula que receberia 1 dado que teria a cor da letra diferente (dependendo do dado recebido), teria que usar JavaScript e/ou PHP, certo?
4 - Se teria que usar JavaScript e/ou PHP, então, eu não precisaria editar a cor em CSS3 e sim, no próprio HTML5, certo?

 

É isso 😛
Essas são minhas dúvidas.

  • Moderador
Postado

@Esae Olá, 

sinceramente tá bem difícil de entender o que o você quer fazer.. Baseado no que você disse acima, tem uma tabela que será populada com dados vindo de um banco de dados( não entendi direito a parte).

 

Nestes dados, tem duas possibilidades disponível ou manutenção. E você quer colocar "disponível" em verde e "manutenção em vermelho.  certo?

 

Inicialmente, você pode pensar que é mais fácil editar isso via CSS. de fato, se fosse só por trocar, basta criar uma classe css para cada cor e adicionar ao elemento que quer trocar de cor.  Porém, o que torna inviável isso é que não é persistente. Ou seja, a menos que você mude diretamente no elemento, qualquer mudança que fizer, ao atualizar a página será perdida.

 

Então aí que entra o banco de dados.

Basicamente minha solução seria você usar as classes CSS dinamicamente com php e o banco de dados.

 

Exemplo simples:

Vamos a tabela do banco de dados:

tabela "status"

ID  status
1   Disponível
2   Manutenção

 

Tabela software

ID software          status
1  Software 1          1
2  software 2          2 

Agora que você tem uma tabela para o status e outra para o software,  no php você poderá fazer um teste de IF, onde SE o campo status  for igual a 1, a célula da tabela(td) terá a cor verde, ou seja, você vai incluir a classe de cor verde.

 

Exemplo:

$query =  mysqli_query($conexao, "SELECT software.nome,
                                         software.IDstatus,  
                                         status.status 
                                  FROM software 
                                  INNER JOIN status ON status.ID = software.status");


while($software = mysqli_fetch_object($query)):
   echo"
        <tr>
          <td>$software->nome</td>";
          if($software->IDstatus == 1):
            echo "  <td class='verde'>$software->status</td>";
          else:
             echo " <td class='vermelho'>$software->status</td>";
          endif;
        echo "</tr>";    
endwhile;

CSS:

.verde{ color: green;}
.vermelho{ color: red;}

Basicamente, ali estamos comparando..  se o status for 1, vai ter a cor verde, se for 2 vermelho.

Se você quiser, também há como colocar essa classe de cores no banco de dados e aí definir a cor de acordo com o status da mesma forma.

 

 

  • Curtir 1
Postado

Você descreveu e exemplificou muito bem o que eu quero fazer. Muito obrigado!
Agora eu entendi perfeitamente bem que vou ter que integrar outra linguagem e/ou até mesmo duas tecnologias (PHP e Banco de Dados), para fazer isso.

 

No caso de integrar o PHP ao CSS, eu poderia editar as classes diretamente em CSS, certo?

  • Moderador
Postado

@Esae

5 horas atrás, Esae disse:

eu poderia editar as classes diretamente em CSS, certo?

sim. você cira suas classes no css e aplica elas com o php.

desta forma:

 echo "  <td class='verde'>$software->status</td>";

 

Postado

@DiF ah, sim. Muito obrigado mesmo. De coração!
Eu vou estudar pra fazer primeiro com PHP e depois fazer com o Banco de Dados, como você disse acima.

Crie uma conta ou entre para comentar

Você precisa ser um usuário 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

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!