Ver Mensaje Individual
  #7 (permalink)  
Antiguo 25/01/2012, 20:34
Avatar de geq
geq
 
Fecha de Ingreso: agosto-2006
Ubicación: Rosario
Mensajes: 655
Antigüedad: 17 años, 8 meses
Puntos: 22
Respuesta: validación de campos en base de datos

Hola,

Lo que deberías hacer es agregar un campo de fecha en la tabla y hacer las comprobaciones como en el código original, pero sumando la verificación de fecha.

Algo muy práctico es usar un campo integer y guardar timestamp, ejemplo:

Insertás un registro:
Código PHP:
mysql_query("insert into tabla(nombre,otro_campo,fecha) values('$nombre','$otro',".time().")"); 
Luego antes de hacer las verificaciones es cuestión de ver que no haya ningún duplicado con fecha mayor a ayer:

Si es durante las últimas 24 horas, podés usar:
Código PHP:
$fecha_limite=time()-24*60*60
Si es a partir del comienzo del día, es decir, a las 00 de hoy, ya puedo volver a cargar un registro duplicado aunque el anterior sea de las 23 de ayer:
Código PHP:
$fecha_limite=mktime(0,0,0); 
Luego, simplemente agregas en la condición de cada consulta que fecha<=$fecha_limite, ejemplo:
Código PHP:
$check "select id from $table where numero = '".$_POST['numero']."' and fecha<=$fecha_limite;"
Saludos.