En un campo de MySQL tengo un campo fecha, hago un query a un registro y rescato el campo de fecha, con el cual necesito generar otra fecha sumandole o restando dias.... Y no he podido hacerlo....si pude hacerlo con la fecha del sistema : $fecha=date("Y-m-d", time() + (60*60*24*2)) o algo asi; pero con una variable no....hay alguna otra forma ......helpme please. Gracias
A ver si te entiendo, ¿creo qué necesitas sumar o restar días a una fecha de un query de mysql? Bueno si es así, solo tienes que colocar lo siguiente: mysql> SELECT INTERVAL 1 DAY + '1997-12-31'; Lo que haces aquí le agregas un día a la fecha 1997-12-31 y te da como resultado: -> '1998-01-01' O sea debes ocupar el comando INTERVAL 'n' DAY donde 'n' es numero de días que quieres agregar o restar a una fecha determinada. Ahora segun tu ejemplo sale date("Y-m-D", time() + (60*60*24*2)) deberia de ser: mysql> SELECT DATE_ADD('1997-12-31 23:59:59', INTERVAL 1 DAY); Y te muestra: -> '1998-01-01 23:59:59' Y si quieres restar ocupa: mysql> SELECT DATE_SUB('1998-01-01 00:00:00',INTERVAL '1 1:1:1' DAY_SECOND); y muestra: -> '1997-12-30 22:58:59' En este ejemplo de resta, lo que le estas diciendo es que te reste 1 1:1:1 o sea 1 día, 1 hora, 1 minuto, 1 segundo. Por eso te muestra el resultado 1997-12-30 (resto un día), 22 (resto 1 hora), 58 (un minuto), 59 (un segundo). Si te fijas en hora y minuto restos 2 (aunque en verdad es 1), pero como el que manda es el segundo, si sumamos este segundo el minuto quedaría en 59 (ahí esta el minuto restado) y así mismo con la hora. Bueno espero que te sirva, si no es eso, pregunta de nuevo.