Foros del Web » Programando para Internet » PHP »

Alternando colores de filas

Estas en el tema de Alternando colores de filas en el foro de PHP en Foros del Web. Hola Hace 1000 horas que intento esto y no hay caso... quiero alternar los colores de las filas (es un script que muestra los registros ...
  #1 (permalink)  
Antiguo 22/06/2009, 01:07
(Desactivado)
 
Fecha de Ingreso: septiembre-2004
Mensajes: 360
Antigüedad: 19 años, 7 meses
Puntos: 1
Alternando colores de filas

Hola
Hace 1000 horas que intento esto y no hay caso... quiero alternar los colores de las filas (es un script que muestra los registros de una tabla mysql y permite actualizar, borrar, insertar usando AJAX, trabaja OK pero no hay forma de lograr alternar los colores).

Código PHP:
            $q 'SELECT '.substr($arrf,1,strlen($arrf)).' FROM '.$this->arrTable.' ORDER BY '.$param.' '.$dir;

                
$result mysql_query($q);
                
$count7=mysql_num_rows($result);

                 
$a=1;
                while( 
$myrow mysql_fetch_array($result) ){
                
                    if ( 
$id == $myrow[$this->arrFields[0]] )
                    {                    
//edit as per fields controls
if($a%2): $color "#efefef"; else: $color "#ffffff"; endif; 

$textout .= '<tr bgcolor="'.$color.'">
                                    <td bgcolor="'
.$color.'"><input type="text" size="15" class="textbox" name="txtId" id="txtId" readonly value="'.$myrow[$this->arrFields[0]].'"></td>
                                    <td><input type="text" size="15" class="textbox" name="txtName" id="txtName" value="'
.$myrow[$this->arrFields[1]].'"></td>
                                    <td><input type="text" size="25" class="textbox" name="txtEmail" id="txtEmail" value="'
.$myrow[$this->arrFields[2]].'"></td>
                                    <td><input type="text" size="15" class="textbox" name="txtDOB" id="txtDOB" value="'
.$myrow[$this->arrFields[3]].'"></td>
                                    <td><a href="#" onClick=saveRecord("save",'
.$myrow[$this->arrFields[0]].',"'.$param.'","'.$dir.'")>Save</a> </td>
                                    <td>| <a href="#" onClick=getagents("'
.$param.'","'.$dir.'")>Cancel</a></td>
                                </tr>'
;
    
$a++;
                    } 
Pegué sólo la parte que muestra las filas.
Alguine tiene 1 min. para ayudarme ?
  #2 (permalink)  
Antiguo 22/06/2009, 01:29
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Alternando colores de filas

Si tienes algun error con PHP por favor especifica de que se trata, si el problema es que en el codigo fuente generado ves los codigos de color para cada fila, pero no se muestran correctamente, entonces tal vez te interese este tema: http://www.forosdelweb.com/f53/cambi...oblema-711618/
__________________
- León, Guanajuato
- GV-Foto
  #3 (permalink)  
Antiguo 22/06/2009, 02:00
 
Fecha de Ingreso: abril-2003
Ubicación: Madrid
Mensajes: 65
Antigüedad: 21 años
Puntos: 2
Respuesta: Alternando colores de filas

Hola porque no lo inentas utilizando CSS?

No estoy del todo seguro pero creo que la propiedad bgcolor asignada a un <tr> no va muy bien en algunos navegadores.

Yo en mis sitios hago algo así:

Cita:
1- Defino dos estilos distintos en la plantilla CSS #fila1 {background: #cecece;} y #fila2 {background: #f1f1f1;}
2- Dentro del "while" meto if (numero par) entonces $estilo="fila1"; sino $estilo="fila2";
3- echo ('<td class="'.$estilo.' >valores a mostrar</td>');
Y con eso me va de muerte.

PD. Cuidado las celdas vacias no asumen color de fondo.

Espero te ayude!
  #4 (permalink)  
Antiguo 22/06/2009, 02:41
Avatar de aliza  
Fecha de Ingreso: diciembre-2008
Mensajes: 156
Antigüedad: 15 años, 4 meses
Puntos: 6
Respuesta: Alternando colores de filas

Te pongo un ejemplo mío que funciona.

<table style="border:1px solid #FF0000; color:#000099;">

<tr style="background-color:red; font-weight: bold;">
<td>Pedido</td>
<td>Tipo</td>
<td>Asesor</td>
<td>Fecha/Hora</td>
<td>Matr&iacutecula</td>
<td>Referencia</td>
<td>Denominaci&oacuten</td>
<td>Unidades</td>
<td>Coste</td>
<td>F.Pedido</td>
<td>F.Prevista</td>
<td>F.LLegada</td>
<td>Entregada</td>
<td>Instalada</td>
<td>Estado</td>
</tr>

<?php
$lista_colores=array('Aquamarine' ,'Turquoise');
$num_colores=2;
$indice=0;
while($row = mysql_fetch_array($sql)){
$color=$lista_colores[$indice % $num_colores];
$indice++;
echo "<tr bgcolor=$color>";
echo "<td>".$row['npedido']."</td>";
echo "<td>".$row['tipo']."</td>";
echo "<td>".$row['user']."</td>";
echo "<td>".$row['fechahora']."</td>";
echo "<td>".$row['matricula']."</td>";
echo "<td>".$row['referencia']."</td>";
echo "<td>".$row['denominacion']."</td>";
echo "<td>".$row['unidades']."</td>";
echo "<td>".$row['pvp']."</td>";
echo "<td>".$row['fpedido']."</td>";
echo "<td>".$row['fprevista']."</td>";
echo "<td>".$row['fllegada']."</td>";
echo "<td>".$row['entregada']."</td>";
echo "<td>".$row['instalada']."</td>";
echo "<td>".$row['estado']."</td>";
echo "</tr>";
}
?>
</table>
__________________
Dando cabezados se aprende...
  #5 (permalink)  
Antiguo 22/06/2009, 10:33
(Desactivado)
 
Fecha de Ingreso: septiembre-2004
Mensajes: 360
Antigüedad: 19 años, 7 meses
Puntos: 1
Respuesta: Alternando colores de filas

Gracias a todos por responder

Voy a intentar todo lo que proponen... pero creo que es un problema estrictamente de PHP (por eso lo posteé aquí)... es decir... yo alterno colores en otros de mis códigos sin problemas pero en éste no hay manera.

Este es el script
http://www.phpclasses.org/browse/dow...2006-08-29.zip

Última edición por Suyta; 22/06/2009 a las 11:03
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 15:40.