Ir para conteúdo

Arquivado

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

TiagoWanderley

Mudar cor do campo de acordo com o resultado

Recommended Posts

Olá pessoal,

 

Estou criando meu primeiro sistema onde tenho uma coluna da tabela com o nome de SITUAÇÃO, gostaria que esse campo mudasse de cor de acordo com a situação especificada. Exemplo:

 

 

Processo: 000000/2015-00

Situação: COBRAR

 

Processo: 000000/2015-00

Situação: OK

 

Processo: 000000/2015-00

Situação: AGUARDAR

 

​Alguém poderia me ajudar?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Talvez não seja tão didático, mas para economia de código poderia utilizar também:

$color = '';
while (...)
{
    $color = $situacao == 'ok' ? 'green' : 'red'; 
    echo '<span style="color: ' . $color . ';">' . $situacao . '</span>';
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

@kcirtapsi seu código não funciona nas necessidades do cara. Ainda existe um caso "Aguardar", e não daria pra colocar nestas condicionais "reduzidas" (esqueci o nome hahaha)

 

Eu teria outra solução, usando switch.

while(...){
    switch($situacao){
        case "ok": $corSituacao = "green"; break;
        case "cobrar": $corSituacao = "red"; break;
        case "aguardar": $corSituacao = "blue"; break;
    }

    echo "Situacao: <span style=\"color:".$corSituacao."\">".$situacao."</span>";

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Maukel-ctba, desculpe, fiz o comentário em cima do segundo comentário, e não reparei na terceira condição:

 

Não testei aqui, mas esse código funcionaria? :

$color = '';
while (...)
{
    $color = $situacao == 'ok' ? 'green' : ($situacao == 'cobrar' ? 'red' : 'blue'); 
    echo '<span style="color: ' . $color . ';">' . $situacao . '</span>';
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

E como eu faria essas aplicações no código? Segue abaixo.

 

PROGRAMAÇÃO:

<?php require_once('Connections/config.php'); ?>
<?php
$currentPage = $_SERVER["PHP_SELF"];
?>
<?php require_once('Connections/config.php'); 

if(isset($_POST['consultar'])){

	$q= mysql_real_escape_string($_POST['campo']);
	
$maxRows_Resultado = 20;
$pageNum_Resultado = 0;
if (isset($_POST['pageNum_Resultado'])) {
  $pageNum_Resultado = $_POST['pageNum_Resultado'];
}
$startRow_Resultado = $pageNum_Resultado * $maxRows_Resultado;

mysql_select_db($database_config, $config);
$query_Resultado = "SELECT * FROM consulta WHERE processo LIKE '%".$q."%' OR categoria LIKE '%".$q."%' OR situacao LIKE '%".$q."%'";
$query_limit_Resultado = sprintf("%s LIMIT %d, %d", $query_Resultado, $startRow_Resultado, $maxRows_Resultado);
$Resultado = mysql_query($query_limit_Resultado, $config) or die(mysql_error());
$row_Resultado = mysql_fetch_assoc($Resultado);

if (isset($_POST['totalRows_Resultado'])) {
  $totalRows_Resultado = $_POST['totalRows_Resultado'];
} else {
  $all_Resultado = mysql_query($query_Resultado);
  $totalRows_Resultado = mysql_num_rows($all_Resultado);
}
$totalPages_Resultado = ceil($totalRows_Resultado/$maxRows_Resultado)-1;

} else {

$maxRows_Resultado = 20;
$pageNum_Resultado = 0;
if (isset($_GET['pageNum_Resultado'])) {
  $pageNum_Resultado = $_GET['pageNum_Resultado'];
}
$startRow_Resultado = $pageNum_Resultado * $maxRows_Resultado;

mysql_select_db($database_config, $config);
$query_Resultado = "SELECT * FROM consulta";
$query_limit_Resultado = sprintf("%s LIMIT %d, %d", $query_Resultado, $startRow_Resultado, $maxRows_Resultado);
$Resultado = mysql_query($query_limit_Resultado, $config) or die(mysql_error());
$row_Resultado = mysql_fetch_assoc($Resultado);

if (isset($_GET['totalRows_Resultado'])) {
  $totalRows_Resultado = $_GET['totalRows_Resultado'];
} else {
  $all_Resultado = mysql_query($query_Resultado);
  $totalRows_Resultado = mysql_num_rows($all_Resultado);
}
$totalPages_Resultado = ceil($totalRows_Resultado/$maxRows_Resultado)-1;

}

$queryString_Resultado = "";
if (!empty($_SERVER['QUERY_STRING'])) {
  $params = explode("&", $_SERVER['QUERY_STRING']);
  $newParams = array();
  foreach ($params as $param) {
    if (stristr($param, "pageNum_Resultado") == false && 
        stristr($param, "totalRows_Resultado") == false) {
      array_push($newParams, $param);
    }
  }
  if (count($newParams) != 0) {
    $queryString_Resultado = "&" . htmlentities(implode("&", $newParams));
  }
}
$queryString_Resultado = sprintf("&totalRows_Resultado=%d%s", $totalRows_Resultado, $queryString_Resultado);
?>

FORMULÁRIO:

<td><?php echo $row_Resultado['situacao']; ?></td>

Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fiquei cego com esse código gerado pelo Dreamweaver :P

 

Cara, esse trecho de código não mostra nada do que deveria (impressão na página). Você deve ter mandado pela metade.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa Noite Tiago ,

 

Uma dica , deixe o Dreamweaver :P

 

Segue um código meia boca , mas vai resolver ..

 

apague o seu <td><?php echo $row_Resultado['situacao']; ?></td> e cole esse código no lugar dele ,

 

Abraços

<?php 
$situacao = $row_Resultado['situacao']; 

if($situacao == 'COBRAR'){ ?>

<td span style="color:red;"><?php echo $situacao; ?></td>

<?php  } ?>

if($situacao == 'OK'){ ?>

<td span style="color:green;"><?php echo $situacao; ?></td>

<?php  } ?>

if($situacao == 'AGUARDAR'){ ?>

<td span style="color:blue;"><?php echo $situacao; ?></td>

<?php  } ?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia Adnilton,

 

Obrigado pela força, só precisei tirar as <td> para se ajustar ao campo e rodou perfeito. Quanto ao Dreamweaver pretendo abandonar esse vicio mas como sou iniciante em programação esta sendo uma mão na roda. :D !

 

Quero também agradecer as outras postagens. Abraço a todos.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Que bom que conseguir de ajudar , tem outras formas de fazer isso tbm hehehehe

 

Cara comecei com Dream tbmm , mas senti que era ele que programava pra mim eu apenas orientava kkkkkkkkkkkkkk

 

Fui pró notepadd++ amei ele , agora estou com sublime text e não troco mais por nada .

 

O Dream gera muito código sem necessidade , qualquer coisa me adiiciona pra trocar ideia e informações ,abraços

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.