Foros del Web » Programando para Internet » PHP »

Pintar linea de tabla

Estas en el tema de Pintar linea de tabla en el foro de PHP en Foros del Web. Buen dia! Una consulta esta bien este codigo para pintar unas lineas de un resultado en php Código PHP: if ( $row [ 'acceso' ]= "*" ...
  #1 (permalink)  
Antiguo 21/04/2017, 08:55
Avatar de jlgarduza  
Fecha de Ingreso: noviembre-2014
Ubicación: Veracruz
Mensajes: 67
Antigüedad: 9 años, 5 meses
Puntos: 0
Pregunta Pintar linea de tabla

Buen dia!

Una consulta esta bien este codigo para pintar unas lineas de un resultado en php

Código PHP:
if ($row['acceso']="*") { $color "#00FF00"; }
                                           if (
$row['acceso']="*" AND $row['hora']<= "08:00:00") { $color "#A4A4A4"; }
                                           if (
$row['acceso']="*" AND $row['hora']>= "08:43:00") { $color "#FF0000"; }
                                           if (
$row['acceso']="6" AND $row['hora']>= "04:11:00") { $color "#FF8C00"; } 
__________________
Jorge Luis Garduza Garcia
Analista de Sistemas Web
  #2 (permalink)  
Antiguo 21/04/2017, 09:19
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 10 años, 9 meses
Puntos: 379
Respuesta: Pintar linea de tabla

Eso no funciona como esperas, la comparación la estas haciendo como string no como una medida de tiempo.
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.
  #3 (permalink)  
Antiguo 21/04/2017, 10:15
alvaro_trewhela
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Pintar linea de tabla

En los ifs estás asignando valores no comparando, debes usar doble signo igual (==) para comparar:

if(a==b){
//do something
}

en cuanto a las horas usa strtotime
  #4 (permalink)  
Antiguo 21/04/2017, 10:51
Avatar de jlgarduza  
Fecha de Ingreso: noviembre-2014
Ubicación: Veracruz
Mensajes: 67
Antigüedad: 9 años, 5 meses
Puntos: 0
Respuesta: Pintar linea de tabla

Cita:
Iniciado por alvaro_trewhela Ver Mensaje
En los ifs estás asignando valores no comparando, debes usar doble signo igual (==) para comparar:

if(a==b){
//do something
}

en cuanto a las horas usa strtotime
Hola de hecho ya lo hice asi pero no me pinta
__________________
Jorge Luis Garduza Garcia
Analista de Sistemas Web
  #5 (permalink)  
Antiguo 21/04/2017, 10:51
Avatar de jlgarduza  
Fecha de Ingreso: noviembre-2014
Ubicación: Veracruz
Mensajes: 67
Antigüedad: 9 años, 5 meses
Puntos: 0
Respuesta: Pintar linea de tabla

Cita:
Iniciado por hhs Ver Mensaje
Eso no funciona como esperas, la comparación la estas haciendo como string no como una medida de tiempo.
La hora la estoy insertando como varchar 08:00:00
__________________
Jorge Luis Garduza Garcia
Analista de Sistemas Web
  #6 (permalink)  
Antiguo 21/04/2017, 10:55
alvaro_trewhela
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Pintar linea de tabla

Por lo que dice hhs estas comparando string con fecha, usa strtotime
  #7 (permalink)  
Antiguo 21/04/2017, 10:56
Avatar de jlgarduza  
Fecha de Ingreso: noviembre-2014
Ubicación: Veracruz
Mensajes: 67
Antigüedad: 9 años, 5 meses
Puntos: 0
Respuesta: Pintar linea de tabla

Cita:
Iniciado por alvaro_trewhela Ver Mensaje
Por lo que dice hhs estas comparando string con fecha, usa strtotime
La hora es varchar
__________________
Jorge Luis Garduza Garcia
Analista de Sistemas Web
  #8 (permalink)  
Antiguo 21/04/2017, 11:05
Avatar de jlgarduza  
Fecha de Ingreso: noviembre-2014
Ubicación: Veracruz
Mensajes: 67
Antigüedad: 9 años, 5 meses
Puntos: 0
Respuesta: Pintar linea de tabla

Este es mi codigo completo

Cita:
<?php
if($_post['consulta'])

{
$srv='167.100.2.5';
$opc=array("database"=>"checador","uid"=>"sa","pwd "=>"madmvw");
$link=sqlsrv_connect($srv,$opc) or die(print_r(sqlsrv_errors(),true));
if($_server['request_method'] == 'post'){
$buscar = filter_var($_post['buscar'], filter_sanitize_string);
$age = $_post['agencia'];
$emp = $_post['empleado'];
$fec1 = $_post['fecha1'];
$fec2 = $_post['fecha2'];


$query="select convert(varchar(10),fecha,103)fecha, hora, acceso from asistencias where idterminal='$age' and idnomina='$emp' and fecha between '$fec1' and '$fec2' order by fecha desc";
$resultado = sqlsrv_query($link, $query);

//se desplegaran los resultados en la tabla
echo "<table class='table table-bordered'>";
echo "<thead class='thead-inverse'><tr>";
echo "<th>fecha</th>";
echo "<th>tipo de acceso</th>";
echo "<th>hora</th>";
echo "</tr>";
if ($row['acceso'] = "*" and $orw['hora'] <= "08:00:00"){
$color = "00ff00";
}
while($row = sqlsrv_fetch_array($resultado)){

echo '<tr bgcolor="'.$color.'">';
echo '<td>'.$row['fecha'].'</td>';
//echo '<td>'.$row['acceso'].'</td>';
echo '<td>';
switch ($row['acceso'])
{
case "*":
Echo "entrada";
break;
case "4":
Echo "salida comida";
break;
case "#":
Echo "salida final";
break;
case "6":
Echo "entrada comida";
break;
}
echo '<td>'.$row['hora'].'</td>';
echo '</td></tr></thead>';

}
echo "</table>";
}
}
?>
__________________
Jorge Luis Garduza Garcia
Analista de Sistemas Web
  #9 (permalink)  
Antiguo 21/04/2017, 11:25
alvaro_trewhela
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Pintar linea de tabla

3 cosas:

if ($row['acceso'] = "*" and $orw['hora'] <= "08:00:00"){
if ($row['acceso'] = "*" and $row['hora'] <= "08:00:00"){

if ($row['acceso'] == "*" and strtotime($row['hora']) <= strtotime("08:00:00")){

y

$color = "00ff00";
$color = "#00ff00";
  #10 (permalink)  
Antiguo 21/04/2017, 11:59
Avatar de jlgarduza  
Fecha de Ingreso: noviembre-2014
Ubicación: Veracruz
Mensajes: 67
Antigüedad: 9 años, 5 meses
Puntos: 0
Respuesta: Pintar linea de tabla

Cita:
Iniciado por alvaro_trewhela Ver Mensaje
3 cosas:

if ($row['acceso'] = "*" and $orw['hora'] <= "08:00:00"){
if ($row['acceso'] = "*" and $row['hora'] <= "08:00:00"){

if ($row['acceso'] == "*" and strtotime($row['hora']) <= strtotime("08:00:00")){

y

$color = "00ff00";
$color = "#00ff00";
Ya eso lo habia corregido, despues de publicar este, pero aun asi no me pinta nada
__________________
Jorge Luis Garduza Garcia
Analista de Sistemas Web
  #11 (permalink)  
Antiguo 21/04/2017, 12:19
alvaro_trewhela
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Pintar linea de tabla

echo '<tr style="background-color='.$color.'>';
  #12 (permalink)  
Antiguo 21/04/2017, 12:32
Avatar de jlgarduza  
Fecha de Ingreso: noviembre-2014
Ubicación: Veracruz
Mensajes: 67
Antigüedad: 9 años, 5 meses
Puntos: 0
Respuesta: Pintar linea de tabla

Cita:
Iniciado por alvaro_trewhela Ver Mensaje
echo '<tr style="background-color='.$color.'>';
si ya lo hice asi y nada jejeje
__________________
Jorge Luis Garduza Garcia
Analista de Sistemas Web
  #13 (permalink)  
Antiguo 21/04/2017, 14:33
alvaro_trewhela
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Pintar linea de tabla

cambia $_post por $_POST
  #14 (permalink)  
Antiguo 21/04/2017, 15:35
Avatar de jlgarduza  
Fecha de Ingreso: noviembre-2014
Ubicación: Veracruz
Mensajes: 67
Antigüedad: 9 años, 5 meses
Puntos: 0
Respuesta: Pintar linea de tabla

Cita:
Iniciado por alvaro_trewhela Ver Mensaje
cambia $_post por $_POST
??????
__________________
Jorge Luis Garduza Garcia
Analista de Sistemas Web
  #15 (permalink)  
Antiguo 21/04/2017, 20:18
alvaro_trewhela
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Pintar linea de tabla

$age = $_post['agencia'];
$emp = $_post['empleado'];
$fec1 = $_post['fecha1'];
$fec2 = $_post['fecha2'];

por:

$age = $_POST["agencia"];

etc...

Etiquetas: pintar, tabla
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 04:01.