Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

TeixeiraRamos

Mudar cor da fonte caso seja maior 0

Recommended Posts

Tenho uma página em ASP com bando de dados em MySQL.

Ocorre que os campos sem valor tem como resultado "0". Como existem muitos zeros (0) confunde muito a visão para ver um valor diferente de "0"

Em MySQL não tem possibilidade de tira o "0" se não o SUM não funciona (salve se existe a possibilidade e não conheço).

Dai gostaria de saber se existe a possibilidade de quando abrir a tabela (banco em MySQL) se a "td" da tabela for maior que > 0 mudar a cor.

Seria bem melhor para visualizar.

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você pode tratar esse resultado de duas formas:

1 - Criar uma condição para que quando o valor do bd seja = 0, não mostrar nada ou,

2 - Criar uma classe/estilo CSS para que quando valor seja = 0, seja aplicado esse estilo.

Att.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Public2004,

Por favor, poderia me informar onde poderia ler sobre as suas sugestões.

Que alívio com a sua informação.

Confesso que há 3 dias procurando, mas não consegui nada.

Obrigado, Saúde e Paz

Compartilhar este post


Link para o post
Compartilhar em outros sites

Em ambos os casos, basicamente uma condição para checar o valor e aplicar a regra, ex:

...

If resultado_bd = 0 Then ' Se resultado do banco de dados for igual a zero, então:

Response.Write("") ' Não mostra nada

Else 'Ou caso resultado diferente de 0:

Response.Write(resultado_bd) 'Mostra o valor

End If

...

Com CSS, criar um estilo para cor de fonte, tipo:

.mycolorRed {color: #ff0000;}

E na condição, a mesma ideia do exemplo acima, só que agora aplicando o estilo:

...

<tr>

<td class="<% If resultado_bd = 0 Then Response.Write("mycolorRed") %>">resultado_bd</td>

</tr>

...

Att.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado, vou aplicar e dou o retorno.

Estou operado, se não for rápido a informação não é por falta de interesse.

Valeu mesmo!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites


<%rs="x"

if rs=0 then

cor = "#009900"

texto="xxx"

response.Write "<font color="& cor &"> & texto & </font>"

else

cor ="#FF0000"

response.Write "<font color="& cor &"> & texto & </font>"

end if%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Valeu xanburzum, vou testar a sua sugestão também.

Public2004:

Fiz isso:

<%
Function cor()
	if t_jan = 0 then
		Response.Write(" ")
	Else
		Response.Write(t_jan)
end if
%>

t_jan é o meu campo que vem do bd com 0

Já tentei de diferentes formas colocar aqui:

<td align="right" width="3%"><font size="2"><%=rs("t_jan"))%></font></td>

.

.

.

<td align="right" width="3%"><font size="2"><%=rs("t_dez"))%></font></td>

Será que não vou ter problema são 12 campos de t_jan a t_dez mais o total. Como vou construir a Function

inclui todos os campos dentro do IF e depois dentro de Else?

Com CSS também não funcionou:

troquei resultado_bd prlo campo t_jan que recebe o resultado do banco de dados com 0 ou não

<style type="text/css" media="all">

.mycolorRed {
	color:#FF0000;
	}

</style>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não entendi o pq da função...

De qq forma, acho q agora ficará melhor para o seu entendimento:

...
<td align="right" width="3%"><font size="2"><% If rs("t_jan") = 0 Then Response.Write("") Else Response.Write(rs("t_jan")) %></font></td>
<td align="right" width="3%"><font size="2"><% If rs("t_fev") = 0 Then Response.Write("") Else Response.Write(rs("t_fev")) %></font></td>
<td align="right" width="3%"><font size="2"><% If rs("t_mar") = 0 Then Response.Write("") Else Response.Write(rs("t_mar")) %></font></td>
...

Em tempo, melhoras e boa recuperação.

Att.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado pelas melhoras. Estou precisando muito. Quatro meses com muito mas muito sofrimento mesmo (próstata).

Bem deletei a função. Você tem razão eu achei que teria que criar.

Somente coloquei isso na <td> da tabela

<td align="right" width="3%"><font size="2"><% If rs("t_jan") = 0 Then Response.Write("") Else Response.Write(rs("t_jan"))%></font></td>

Deu o seguinte erro:

Erro de tempo de execução do Microsoft VBScript erro '800a000d'

Tipos incompatíveis

/meu novo site nova versao/teste_logspormes.asp, linha 111

A linha 111 é justamente a:

 <td align="right" width="3%"><font size="2"><% If rs("t_jan") = 0 Then Response.Write("") Else Response.Write(rs("t_jan"))%></font></td>

Eu entendi (aprendi). Não deveria mostrar Err. Tem lógica. Que tipos incompatíveis?

Inclusive, na minha ignorância achei que teria que colocar "End If", mas também não funcionou

Saúde a Paz para você.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Em tempo.

Coloquei entre aspa o "0" e funcionou.

Muito obrigado muito obrigado mesmo.

Abraços e Boa noite com Saúde e Paz

Compartilhar este post


Link para o post
Compartilhar em outros sites

é o tipo de dados que está como string... mas se funcionou maravilha

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

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