Utilizamos cookies propias y de terceros para mejorar la experiencia de navegación, y ofrecer contenidos y publicidad de interés.
Al continuar con la navegación entendemos que se acepta nuestra política de cookies.
Iniciar sesión Cerrar
Correo:
Contraseña:
Entrar
Recordar sesión en este navegador
Iniciar sesiónIniciar sesiónCrear cuentaCrear cuenta

JavaScript - Calculo de dias laborales y que un input tome un valor

Vista:
Me gusta: Está pregunta es útil y esta clara
0
No me gusta: Está pregunta no esta clara o no es útil
 
Asunto:

Calculo de dias laborales y que un input tome un valor

Autor:Erasmo Camacho (5 intervenciones)
Fecha:30/10/2012 21:05:46
Saludos, más o menos tengo este formulario:
Código PHP:
<form id="form1" name="form1" method="post" action=""> <label>Fecha Inicio <input type="text" name="FechaInicio" id="FechaInicio" /> <br /> Fecha Final </label> <label> <input type="text" name="FechaFin" id="FechaFin" /> <br /> Dias Continuos <input type="text" name="DiasContinuos" id="DiasContinuos" /> <br /> Dias Habiles </label> <label> <input type="text" name="DiasHabiles" id="DiasHabiles" /> </label> <p> <label> <input type="submit" name="enviar" id="enviar" value="Enviar" /> </label> </p> </form>

Asimismo la funcion de calcular dias laborales:
Código PHP:
<?php function calculardias($fecha1, $fecha2){ $dato1 = explode("/", $fecha1); $dato2 = explode("/", $fecha2); //defino fecha 1 $ano1 = $dato1[0]; $mes1 = $dato1[1]; $dia1 = $dato1[2]; //defino fecha 2 $ano2 = $dato2[0]; $mes2 = $dato2[1]; $dia2 = $dato2[2]; //calculo timestam de las dos fechas $timestamp1 = mktime(0,0,0,$mes1,$dia1,$ano1); /* echo ("$timestamp1"."<br>"); */ $timestamp2 = mktime(4,12,0,$mes2,$dia2,$ano2); /* echo ("$timestamp2"."<br>"); */ $segundos_diferencia = $timestamp2 - $timestamp1; //resto a una fecha la otra */ /* echo ("$segundos_diferencia"."<br>"); */ $dias_diferencia = $segundos_diferencia / (60 * 60 * 24); //convierto segundos en días $dias_diferencia = round($dias_diferencia); //obtengo el valor absoulto de los días (quito el posible signo negativo) return $dias_diferencia; } ?>

La cuestión:
Como realizo el llamado de la funcion para que el input "DiasContinuos" tome un valor de la funcion el cual seria "$dias_diferencia" . Gracias por vuestra ayuda
Responder
información
Otras secciones de LWP con contenido similar...
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:

Calculo de dias laborales y que un input tome un valor

Autor:Jose Manuel josema@orbisapientia.com (15 intervenciones)
Fecha:31/10/2012 09:57:17
Hola:

Tal vez sea esto:

<form id="form1" name="form1" method="post" action=""> <label>Fecha Inicio <input type="text" name="FechaInicio" id="FechaInicio" /> <br /> Fecha Final </label> <label> <input type="text" name="FechaFin" id="FechaFin" /> <br /> Dias Continuos <input type="text" name="DiasContinuos" id="DiasContinuos" value="<?php echo calculardias($fecha1, $fecha2);?>" /> <br /> Dias Habiles </label> <label> <input type="text" name="DiasHabiles" id="DiasHabiles" /> </label> <p> <label> <input type="submit" name="enviar" id="enviar" value="Enviar" /> </label> </p> </form>

He puesto $fecha1 y $fecha2 como ejemplo, pero esta claro que tú pondrías ahí los valores que desearas. Si no es esto a lo que te referías pues ya sabes, aquí no es mal sitio para que te echemos una mano.

Saludos,

José Manuel
===============
http://www.orbisapientia.com
Comentar
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:

Calculo de dias laborales y que un input tome un valor

Autor:Erasmo Camacho (5 intervenciones)
Fecha:31/10/2012 12:28:31
Saludos, veo el cambio en
<input type="text" name="DiasContinuos" id="DiasContinuos" value="<?php echo calculardias($fecha1, $fecha2);?>" />

Pero no veo declarado $fecha1, $fecha2, cuando los input que obtienen esos valores son:
<input type="text" name="FechaInicio" id="FechaInicio" />
y
<input type="text" name="FechaFin" id="FechaFin" />

En fin, como llevo los valores introducidos en los inputs anteriores a las variables $fecha1, $fecha2?
Gracias por el apoyo
Comentar
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:

Calculo de dias laborales y que un input tome un valor

Autor:Jose Manuel josema@orbisapientia.com (15 intervenciones)
Fecha:31/10/2012 12:45:58
Ok, ahora me voy aclarando más. Como te indiqué en el mensaje anterior los $fecha1 y $fecha2 que puse eran de ejemplo. Creo que ahora tengo totalmente claro lo que quieres hacer. Veamos.

Pretendes calcular el valor de un input, en base a una función en PHP que recibe parámetros a partir de otros inputs del mismo formulario. Creo que tienes dos opciones y las dos pasan por el uso de JavaScript.

Primero: los input FechaInicio y FechaFin deben contener un valor válido. Usando JavaScript debes controlar cuando cambia el contenido de estos archivos y validar ese contenido. Si son correctos, pasas al segundo paso.

Segundo: aquí tienes las dos opciones que te dije. Una vez que mediante JavaScript has tomado los valores de los input FechaInicio y FechaFin y han sido validados como correctos, envías el formulario, ahora la función calculardias puede tomar los dos valores. Vuelves a cargar el formulario donde ahora ya tienes un valor para el input DiasContinuos.

La otra opción de este segundo paso implica el uso de AJAX. Cuando tienes los valores de los input FechaInicio y FechaFin validados, haces una llamada mediante AJAX a un script php que tenga y ejecute la función calculardias que devolverá un resultado. Coges ese resultado y mediante JavaScript se lo asignas al input DiasContinuos.

En cualquier caso, lo primero es asegurarse de que los inputs FechaInicio y FechaFin tienen un valor correcto, mediante el uso de JavaScript.

Bueno, ya nos dirás como te va. Aquí seguimos. Saludos.

Jose Manuel
================
http://www.orbisapientia.com
Comentar