Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Distinguir filas por color de tabla según variable

Estas en el tema de Distinguir filas por color de tabla según variable en el foro de PHP en Foros del Web. Hola a todos, intento darle un color diferente a las filas de una tabla según el valor que tenga la variable $var7, especificamente si vale ...
  #1 (permalink)  
Antiguo 09/12/2014, 06:54
Avatar de Jlopez2014  
Fecha de Ingreso: julio-2014
Ubicación: Barranquilla
Mensajes: 154
Antigüedad: 9 años, 9 meses
Puntos: 0
Exclamación Distinguir filas por color de tabla según variable

Hola a todos, intento darle un color diferente a las filas de una tabla según el valor que tenga la variable $var7, especificamente si vale 'Si', más no consigo hacerlo pues parece que hay conflicto con los cierres de corchetes... este es mi código sin trabajar de la tabla y su respectiva consulta:

Código PHP:
Ver original
  1. <?php
  2. $sql="
  3. SELECT entrada.fecha, entrada.horario, entrada.empleado, entrada.proyecto, entrada.encargado, entrada.salida, entrada.novedades, entrada.festivo
  4. FROM entrada
  5. WHERE entrada.empleado = '".$cedula."' AND  fecha BETWEEN '2014-11-29' AND '2014-12-13'
  6. ORDER BY entrada.fecha";
  7.         $cs=mysql_query($sql,$cn);
  8.         echo"<center><font size=4 color='#0B71C4'><strong>DETALLES N&Oacute;MINA</strong></font><br><br>
  9. <table border='1' bordercolor='#C5E9FC' bgcolor='#FFFFFF'>
  10. <tr>
  11. <td><center><font color='#0B71C4'><strong>Fecha</strong></font></center></td>
  12. <td><center><font color='#0B71C4'><strong>Horario Entrada</strong></font></center></td>
  13. <td><center><font color='#0B71C4'><strong>Horario Salida</strong></font></center></td>
  14. <td><center><font color='#0B71C4'><strong>Proyecto</strong></font></center></td>
  15. <td><center><font color='#0B71C4'><strong>Novedades</strong></font></center></td>
  16. <td><center><font color='#0B71C4'><strong>Encargado del Ingreso</strong></font></center></td>
  17. </tr>";
  18.         while($resul=mysql_fetch_array($cs)){
  19.             $var=$resul[0];
  20.             $var1=$resul[1];
  21.             $var2=$resul[2];
  22.             $var3=$resul[3];
  23.             $var4=$resul[4];
  24.             $var5=$resul[5];
  25.             $var6=$resul[6];
  26.             $var7=$resul[7];
  27.             $var8=$resul[8];
  28.            
  29.             echo "<tr>
  30. <td><center>$var</center><input name='txtfecha[]' type='hidden'  value='$var' size='6'/></td>
  31. <td><center>$var1</center><input name='txtentrada]' type='hidden'  value='$var1' size='4'/></td>
  32. <td><center>$var5</center><input name='txtsalida[]' type='hidden'  value='$var5' size='4'/></td>
  33. <td><center>$var3</center><input name='txtproyecto[]' type='hidden'  value='$var3' size='10'/></td>
  34. <td><center>$var6</center></td>
  35. <td><center>$var4</center><input name='txtencargado[]' type='hidden'  value='$var4' size='5'/></td>
  36.  
  37.  
  38. </tr>";
  39.             }
  40.            
  41.             echo "</table>
  42. </center>";
  43. ?>

y esto es lo que he intentado hacer que no me funciona bien, a veces solo he logrado que la tabla imprima los datos donde la variable tiene valor 'Si'...

Código PHP:
Ver original
  1. <?php .....
  2.             if ($var7 == 'Si') {
  3.             echo "<tr bgcolor='red'>
  4. <td><center>$var</center><input name='txtfecha[]' type='hidden'  value='$var' size='6'/></td>
  5. <td><center>$var1</center><input name='txtentrada]' type='hidden'  value='$var1' size='4'/></td>
  6. <td><center>$var5</center><input name='txtsalida[]' type='hidden'  value='$var5' size='4'/></td>
  7. <td><center>$var3</center><input name='txtproyecto[]' type='hidden'  value='$var3' size='10'/></td>
  8. <td><center>$var6</center></td>
  9. <td><center>$var4</center><input name='txtencargado[]' type='hidden'  value='$var4' size='5'/></td>
  10.  
  11.  
  12. </tr>";
  13.             }
  14.            
  15.             echo "</table>
  16. </center>";
  17. }else{
  18. echo "<tr bgcolor='red'>
  19. <td><center>$var</center><input name='txtfecha[]' type='hidden'  value='$var' size='6'/></td>
  20. <td><center>$var1</center><input name='txtentrada]' type='hidden'  value='$var1' size='4'/></td>
  21. <td><center>$var5</center><input name='txtsalida[]' type='hidden'  value='$var5' size='4'/></td>
  22. <td><center>$var3</center><input name='txtproyecto[]' type='hidden'  value='$var3' size='10'/></td>
  23. <td><center>$var6</center></td>
  24. <td><center>$var4</center><input name='txtencargado[]' type='hidden'  value='$var4' size='5'/></td>
  25.  
  26.  
  27. </tr>";
  28.             }
  29.            
  30.             echo "</table>
  31. </center>";
  32. }
  33. ?>

Gracias de antemano por la colaboración!
  #2 (permalink)  
Antiguo 09/12/2014, 08:47
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años
Puntos: 326
Respuesta: Distinguir filas por color de tabla según variable

Del segundo trozo de código:

Código PHP:
<?php .....
            if (
$var7 == 'Si') {
            echo 
"<tr bgcolor='red'>
<td><center>$var</center><input name='txtfecha[]' type='hidden'  value='$var' size='6'/></td>
<td><center>$var1</center><input name='txtentrada]' type='hidden'  value='$var1' size='4'/></td>
<td><center>$var5</center><input name='txtsalida[]' type='hidden'  value='$var5' size='4'/></td>
<td><center>$var3</center><input name='txtproyecto[]' type='hidden'  value='$var3' size='10'/></td>
<td><center>$var6</center></td>
<td><center>$var4</center><input name='txtencargado[]' type='hidden'  value='$var4' size='5'/></td>
 
 
</tr>"
;

}else{
echo 
"<tr bgcolor='red'>
<td><center>$var</center><input name='txtfecha[]' type='hidden'  value='$var' size='6'/></td>
<td><center>$var1</center><input name='txtentrada]' type='hidden'  value='$var1' size='4'/></td>
<td><center>$var5</center><input name='txtsalida[]' type='hidden'  value='$var5' size='4'/></td>
<td><center>$var3</center><input name='txtproyecto[]' type='hidden'  value='$var3' size='10'/></td>
<td><center>$var6</center></td>
<td><center>$var4</center><input name='txtencargado[]' type='hidden'  value='$var4' size='5'/></td>
 
 
</tr>"
;
            }
            
            echo 
"</table>
</center>"
;
}
?>
Te sobran las dos lineas que te he quitado:
Código PHP:
            }
            
            echo 
"</table>
</center>"

Pq cerrabas el if, seguías haciendo cosas, y luego hacias el else... y ahí te daría error.

Ahora, yo modificaría el primero para algo más sencillo:
Código PHP:
<?php
$sql
="
SELECT entrada.fecha, entrada.horario, entrada.empleado, entrada.proyecto, entrada.encargado, entrada.salida, entrada.novedades, entrada.festivo
FROM entrada
WHERE entrada.empleado = '"
.$cedula."' AND  fecha BETWEEN '2014-11-29' AND '2014-12-13'
ORDER BY entrada.fecha"
;
        
$cs=mysql_query($sql,$cn);
        echo
"<center><font size=4 color='#0B71C4'><strong>DETALLES N&Oacute;MINA</strong></font><br><br>
<table border='1' bordercolor='#C5E9FC' bgcolor='#FFFFFF'>
<tr>
<td><center><font color='#0B71C4'><strong>Fecha</strong></font></center></td>
<td><center><font color='#0B71C4'><strong>Horario Entrada</strong></font></center></td>
<td><center><font color='#0B71C4'><strong>Horario Salida</strong></font></center></td>
<td><center><font color='#0B71C4'><strong>Proyecto</strong></font></center></td>
<td><center><font color='#0B71C4'><strong>Novedades</strong></font></center></td>
<td><center><font color='#0B71C4'><strong>Encargado del Ingreso</strong></font></center></td>
</tr>"
;
        while(
$resul=mysql_fetch_array($cs)){
            
$var=$resul[0];
            
$var1=$resul[1];
            
$var2=$resul[2];
            
$var3=$resul[3];
            
$var4=$resul[4];
            
$var5=$resul[5];
            
$var6=$resul[6];
            
$var7=$resul[7];
            
$var8=$resul[8];
            if(
$var7 == "Si"$color="red";
            else 
$color "blue";
            echo 
"<tr bgcolor='$color'>
<td><center>$var</center><input name='txtfecha[]' type='hidden'  value='$var' size='6'/></td>
<td><center>$var1</center><input name='txtentrada]' type='hidden'  value='$var1' size='4'/></td>
<td><center>$var5</center><input name='txtsalida[]' type='hidden'  value='$var5' size='4'/></td>
<td><center>$var3</center><input name='txtproyecto[]' type='hidden'  value='$var3' size='10'/></td>
<td><center>$var6</center></td>
<td><center>$var4</center><input name='txtencargado[]' type='hidden'  value='$var4' size='5'/></td>
 
 
</tr>"
;
            }
            
            echo 
"</table>
</center>"
;
?>
Por decir algo...
__________________
>> Eleazan's Source
>> @Eleazan
  #3 (permalink)  
Antiguo 09/12/2014, 09:17
Avatar de Jlopez2014  
Fecha de Ingreso: julio-2014
Ubicación: Barranquilla
Mensajes: 154
Antigüedad: 9 años, 9 meses
Puntos: 0
Respuesta: Distinguir filas por color de tabla según variable

Excelente aclaración y consejo!!!... Gracias!!!!!!

Etiquetas: color, mysql+php
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:46.