Foros del Web » Programando para Internet » PHP »

Insertar un valor si esta entre dos fechas

Estas en el tema de Insertar un valor si esta entre dos fechas en el foro de PHP en Foros del Web. Hola, estoy utilizando php y mysql para recoger unos determinados datos de personas que se inscriben en mi pagina web. En un formulario htm, solicito ...
  #1 (permalink)  
Antiguo 26/01/2009, 12:07
Avatar de EnCeRiO  
Fecha de Ingreso: septiembre-2004
Mensajes: 375
Antigüedad: 19 años, 7 meses
Puntos: 0
Insertar un valor si esta entre dos fechas

Hola, estoy utilizando php y mysql para recoger unos determinados datos de personas que se inscriben en mi pagina web.

En un formulario htm, solicito por ejemplo:
Nombre:
DNI:
Sexo:
Fecha de Nacimiento:


Tengo un campo más que es: Categoría, esta depende de la fecha de nacimiento, ejemplo: si nació entre el 01-01-1974 y 31-12-1979 y es un hombre, la categoria será: M30.

Se podría con un script php modificar toda la columna Categoría insertando su categoria correspondiente?


Gracias
Saludos
__________________
Médicos Sin Fronteras
Casi todos sabemos a qué se dedican, pero no sabemos lo fácil que es hacerse socio, ¿te sobran 10 €/mes?
  #2 (permalink)  
Antiguo 26/01/2009, 12:09
Avatar de killerangel  
Fecha de Ingreso: septiembre-2007
Ubicación: Un punto en el espacio
Mensajes: 592
Antigüedad: 16 años, 7 meses
Puntos: 10
Respuesta: Insertar un valor si esta entre dos fechas

Eso es tan solo un if, no veo por q te complicas tanto.

Solo tienes q comparar los datos q ingresa el usuario con lo que deseas y nada mas!!
__________________
Sueñen... y trabajen por hacer esos sueños realidad... de eso se construye el futuro!!
Me siento entre la ASP-ada y la PHP-red
  #3 (permalink)  
Antiguo 26/01/2009, 12:10
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Insertar un valor si esta entre dos fechas

Hola EnCeRiO,

Es perfectamente posible, solamente desarrolla e implementa el script, usa SELECTs para seleccionar los datos, calculas con PHP, y haces el UPDATE correspondiente.

También otra opción más eficiente es crear un Stored Procedure directamente en la Base de Datos para hacer esto.

Saludos
  #4 (permalink)  
Antiguo 28/01/2009, 16:34
Avatar de EnCeRiO  
Fecha de Ingreso: septiembre-2004
Mensajes: 375
Antigüedad: 19 años, 7 meses
Puntos: 0
Respuesta: Insertar un valor si esta entre dos fechas

Hola, primero, gracias a los dos.
Un Stored Procedure no se que es, nunca lo he realizado y no tengo la remota idea de como funciona xD

Como lo podria hacer con un if?? como le digo a php que me compare entre dos fechas?? Quiero decir que como le digo a php: si nació entre el 01-01-1990 y el 31-12-1995 escribe M20???


Saludos
__________________
Médicos Sin Fronteras
Casi todos sabemos a qué se dedican, pero no sabemos lo fácil que es hacerse socio, ¿te sobran 10 €/mes?
  #5 (permalink)  
Antiguo 28/01/2009, 23:10
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Insertar un valor si esta entre dos fechas

Puedes usar strtotime() para convertir la fecha en un timestamp y asi comparar con un if:

if( $fecha < $fecha_inicial && $fecha > $fecha_inicial ) etc.

Saludos.
  #6 (permalink)  
Antiguo 01/02/2009, 09:16
Avatar de EnCeRiO  
Fecha de Ingreso: septiembre-2004
Mensajes: 375
Antigüedad: 19 años, 7 meses
Puntos: 0
Respuesta: Insertar un valor si esta entre dos fechas

Gracias, a ver si tengo tiempo y lo pruebo


Saludos
__________________
Médicos Sin Fronteras
Casi todos sabemos a qué se dedican, pero no sabemos lo fácil que es hacerse socio, ¿te sobran 10 €/mes?
  #7 (permalink)  
Antiguo 01/02/2009, 09:26
Avatar de vicram10  
Fecha de Ingreso: enero-2009
Ubicación: Asuncion
Mensajes: 326
Antigüedad: 15 años, 3 meses
Puntos: 27
Respuesta: Insertar un valor si esta entre dos fechas

y a una de tus preguntas para aclarartelo

Cita:
Un Stored Procedure no se que es, nunca lo he realizado y no tengo la remota idea de como funciona xD
un store procedure o procedimiento almacenado es justamente eso, un procedimiento guardado en la bd para luego poder ser ejecutado en cualquier momento, tomando como datos algunos parametros para poder realizar su cometido.. es muy buena forma... de realizar lo que quieres....

Un ejemplo de procedimiento almacenado: Actualizar el total de una tabla

Cita:
CREATE PROCEDURE nombre_de_tu_procedimiento

-- parametro recibido

@nro_caja decimal(10,0)

as

-- variables a usar durante el procedimiento
declare
@ingreso decimal(15,0)
,@egreso decimal(15,0)
,@total decimal(15,0)
begin

-- realizas la suma del ingreso de acuerdo al parametro enviado

select @ingreso= sum(MovimientoCajaSubtTotal)
from dbo.MOVIMIENTOCAJA1
where MovimientoCajaNro=@nro_caja
and RubroMovimientoCajaCodigo like 'I%'

-- realizas la suma del egreso de acuerdo al parametro enviado

select @egreso= sum(MovimientoCajaSubtTotal)
from dbo.MOVIMIENTOCAJA1
where MovimientoCajaNro=@nro_caja
and RubroMovimientoCajaCodigo like 'E%'

update dbo.MOVIMIENTOCAJA
set MovimientoCajaIngreso=@ingreso
,MovimientoCajaEgreso=@egreso
,MovimientoCajaTotal= @ingreso-@egreso
where MovimientoCajaNro = @nro_caja
end
Este ejemplo es solamente para mostrarte mas o menos como es un procedimiento, la misma esta hecho totalmente en SQL

salu2
  #8 (permalink)  
Antiguo 03/02/2009, 16:04
Avatar de EnCeRiO  
Fecha de Ingreso: septiembre-2004
Mensajes: 375
Antigüedad: 19 años, 7 meses
Puntos: 0
Respuesta: Insertar un valor si esta entre dos fechas

Cita:
Iniciado por vicram10 Ver Mensaje
y a una de tus preguntas para aclarartelo

un store procedure o procedimiento almacenado es justamente eso, un procedimiento guardado en la bd para luego poder ser ejecutado en cualquier momento, tomando como datos algunos parametros para poder realizar su cometido.. es muy buena forma... de realizar lo que quieres....

Un ejemplo de procedimiento almacenado: Actualizar el total de una tabla



Este ejemplo es solamente para mostrarte mas o menos como es un procedimiento, la misma esta hecho totalmente en SQL

salu2
Olé! Muchísimas gracias por la explicación, nunca está de más aprender un cosa más!


Saludos
__________________
Médicos Sin Fronteras
Casi todos sabemos a qué se dedican, pero no sabemos lo fácil que es hacerse socio, ¿te sobran 10 €/mes?
  #9 (permalink)  
Antiguo 03/02/2009, 20:03
 
Fecha de Ingreso: abril-2006
Mensajes: 1.128
Antigüedad: 18 años
Puntos: 33
Respuesta: Insertar un valor si esta entre dos fechas

EnCeRio:

Yo hago algo parecido asi ->

1.- Obtengo las siguientes variables via un POST
desde un archivo HTML.
$diamesx
$mesx
$anualx
$horax
$minutox
$segundox";
2.- Las combino asi ->
$lafecha = "$diamesx $mesx $anualx $horax:$minutox:$segundox";
3.- Saco un codigo identificador de la fecha completa asi ->
$codigofecha = strtotime("$lafecha");

En tu caso especifico puedes obtener un codigo NUMERO identificador
de la fecha de nacimiento primera, Otro de la fecha de nacimiento segundo.
Y otro de la fecha de nacimiento del usuario.

Y haces lo siguiente ->
$x = "H"; (Para Hombre)
$Y = "M"; (Para Mujer)
if($codigofechausuario > $codigofechauno && $codigofechausuario < $codigofechados && $x == "H") {
AQUI LO QUE QUIERAS HACER (Categoria M3O!!!!).
}

if($codigofechausuario > $codigofechauno && $codigofechausuario < $codigofechados && $x == "M"){
AQUI LO QUE QUIERAS HACER
}

Saludos
Franco
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 16:27.