Ver Mensaje Individual
  #1 (permalink)  
Antiguo 17/05/2014, 05:15
danikene
 
Fecha de Ingreso: marzo-2007
Mensajes: 59
Antigüedad: 17 años, 9 meses
Puntos: 1
Error en calculo de fecha mktime() expects parameter 6 to be long

Hola amigos tengo un pequeño inconveniente con el calculo de unas fechas, a ver si me pueden ayudar ya que no veo el error. El error es mktime() expects parameter 6 to be long y me aparece en la linea que está Documentada al comienzo del While, incluso luego despues de tiempo tengo ahora un loop infinito en la página con ese error. Gracias por anticipado.

Código PHP:
Ver original
  1. function calc_mes_ad($sal,$reg) {
  2.             $arrsal = explode("/", $sal);
  3.             $arrreg = explode("/", $reg);
  4.             $salphp=mktime(0, 0, 0, $arrsal[1], $arrsal[0], $arrsal[2], 0);
  5.             $regphp=mktime(0, 0, 0, $arrreg[1], $arrreg[0], $arrreg[2], 0);
  6.  
  7. $regphp_aux=mktime(0, 0, 0, $arrsal[1], $arrsal[0], $arrsal[2], 0);
  8.             $i=1;
  9.             while($regphp > $regphp_aux ) {
  10.                $regphp_aux=mktime(0, 0, 0, $arrsal[1]+$i, $arrsal[0]-1, $arrsal[2], 0); // <---  Aca es donde aparece el error
  11.                $i=$i+1;
  12.             }
  13.             $t=$i-1;
  14.             $regphp_aux2=mktime(0, 0, 0, $arrsal[1]+($t-1), $arrsal[0]-1, $arrsal[2], 0);
  15.             $inter2 = $regphp-$regphp_aux2;
  16.             $dias_aux2 = number_format($inter2/86400,0);
  17.  
  18.             if ($dias_aux2==0) {
  19.                     return $t."|0";
  20.  
  21.             }
  22.             else {
  23.                     if ($dias_aux2>21) {
  24.                             return $t."|0";
  25.                     }
  26.                     else {
  27.                             $semanas=1;
  28.                             $regphp_aux3=$regphp_aux2;
  29.                             while ($regphp > $regphp_aux3) {
  30.                                     $reg3=date("d/m/Y", $regphp_aux3);
  31.                                     $arrreg3 = explode("/", $reg3);
  32.                                     $regphp_aux3=mktime(0, 0, 0, $arrreg3[1], $arrreg3[0]+(7), $arrreg3[2], 0);
  33.                                     $semanas=$semanas+1;
  34.                             }
  35.  
  36.                             return ($t-1)."|".($semanas-1);
  37.  
  38.  
  39.                     }
  40.             }
  41.  
  42.     }