Ver Mensaje Individual
  #1 (permalink)  
Antiguo 13/05/2010, 09:44
andruxand
 
Fecha de Ingreso: marzo-2010
Ubicación: Cali
Mensajes: 203
Antigüedad: 14 años, 1 mes
Puntos: 5
ayuda por favor

Hola a todos espero que esten bien. bueno esta vez paso por que tengo un problema con lo que es un contador de dias habiles o laborales, el codigo ya lo tengo hecho y todo me da bien el problema es la fecha en la que inicia el conteo de dias habiles. la fecha la traigo de una consulta de la base de datos mysql y no es una fecha si no varias ya que son varios registros que se encuentran en la tabla donde consulto la fecha inicial, lo que necesito es que recorra el campo donde se encuentra la fecha inicial para uno por una ir detectanto con el codigo que tengo los dias habiles correpondientes a esa fecha y asi mostrar los datos en un tabla por ejemplo:

fecha inicial dias habiles
fecha 1 dias
fecha 2 dias y asi...
aqui les dejo como tengo el codigo.

Código PHP:
            mysql_select_db($database_cx$cx);
                    
$query_alertas sprintf("SELECT r.*, CONCAT(usuario.nombres,' ', usuario.apellidos) as Registro, group_concat(DISTINCT(doc.nombre_corto)) as doc, DateDiff(r.fecha_radicado, '$fecha' ) as dif from usuario, (radicado r left join documento_radicado as radi on r.id_radicado = radi.id_radicado) left join documento as doc on (radi.id_documento = doc.id_documento) and (radi.estado = doc.estado)         
                                             WHERE r.estado = 1 and
                                             r.id_usuario = usuario.id_usuario and
                                              r.formulario <> 'completo' and 
                                              r.fecha_radicado between '2007-01-01' and '$fecha' "
.$m.
                                              group by r.id_radicado desc "
);
            
$alertas mysql_query($query_alertas$cx) or die(mysql_error());
            
$row_alertas mysql_fetch_assoc($alertas);

//while ($row_alertas = mysql_fetch_assoc($alertas)){
            
$data=split("-",$row_alertas['fecha_radicado']);//fecha radicado es la que necesito que recorra para poder hacer el mismo calculo con las otras fechas
        
$e$data[1]."-".$data[2]."-".$data[0];
    
    
//}

    
     
$fechaInicial           mktime(0,0,0,$data[1],$data[2],$data[0]);  
 
$lapso          30;//  dias habiles  
 
$diasTrans      0// dias transcurridos  
 
$diasHabiles    0;
 
$feriados       = array("1-1","19-4","1-5","18-5","02-11","25-12");  
 while(
$diasHabiles<($lapso+1))  
 {   
$fecha      $fechaInicial+($diasTrans*86400);   
    
$diaSemana  getdate($fecha);  
     if(
$diaSemana["wday"]!=&& $diaSemana["wday"]!=6)  
     {   
$feriado    $diaSemana['mday']."-".$diaSemana['mon'];  
         if(!
in_array($feriado,$feriados))  
         {   
$diasHabiles++; }  
     }  
     
$diasTrans++;  
 }  
 
$fechaFinal     $fechaInicial+(($diasTrans-1)*86400); 
   
 echo 
"<br /><br /><b>Entrega:".date("l d-F-Y",$fechaFinal)."</b>";     
    
if(
$totalRows_alertas == 0){
$men ="No tiene alertas actualmente";
$dia "";
$row_alertas['dif'] = " ";
}else{
$dia="dia(s)";
$row_alertas['dif']=$row_alertas['dif'];
}

  while (
$todo $row_alertas['Registro']) {  
        
//asi obtienes los datos de un campo 
        
if($todo == "Adrian Herrera"){
        
$imagen 'naranja.gif';
        }else{
        
$imagen 'rojo.gif';
        }
        
//repetir segun sea necesario 
   


  


?> 
muchas gracias por su atencion