Foros del Web » Programando para Internet » PHP »

Introducir fecha/hora en MySQL

Estas en el tema de Introducir fecha/hora en MySQL en el foro de PHP en Foros del Web. Bueno, por fin... Yo es que no uso DATE_FORMAT, siempre lo hago como dije antes... Supongo que se podrá hacer como tú y como yo ...

  #31 (permalink)  
Antiguo 10/06/2003, 11:16
Avatar de ferny
Il capo della mafia
 
Fecha de Ingreso: febrero-2002
Ubicación: Al final del cable
Mensajes: 10.080
Antigüedad: 22 años, 2 meses
Puntos: 55
Bueno, por fin...
Yo es que no uso DATE_FORMAT, siempre lo hago como dije antes... Supongo que se podrá hacer como tú y como yo decimos (y seguro que de alguna forma más ) pero la cuestión era ver si funcionaba... y funciona
Salu2
__________________
www.mundodivx.com || www.mundodivx.org

Pon tu mano en un horno caliente durante un minuto y te parecerá una hora.
Siéntate junto a una chica preciosa durante una hora y te parecerá un minuto.
Eso es la relatividad.
  #32 (permalink)  
Antiguo 10/06/2003, 11:18
 
Fecha de Ingreso: abril-2003
Mensajes: 606
Antigüedad: 21 años
Puntos: 2
Eso si, pero no cabe duda que hay que hacer las cosas bien. Y para eso se inventaron los campos tipo Date =D
  #33 (permalink)  
Antiguo 10/06/2003, 11:19
Avatar de Manoloweb  
Fecha de Ingreso: enero-2002
Ubicación: Monterrey
Mensajes: 2.454
Antigüedad: 22 años, 3 meses
Puntos: 5
Gracias MySQL y PHP, por permitirnos encontrar mas de una solución para el mismo problema, por más sencillo que esto sea...

Para llegar de Chile a Argentina hay dos caminos, uno por el Este y otro por el Oeste, solo que uno de ellos es mas largo y complicado...

Yo voy por el Este
__________________
Manoloweb
  #34 (permalink)  
Antiguo 10/06/2003, 11:34
Avatar de ZaPo  
Fecha de Ingreso: junio-2003
Ubicación: KamiYoPlanet
Mensajes: 221
Antigüedad: 20 años, 10 meses
Puntos: 1
jejej

Asi da gusto aprender! Al final me kedo con el modo de Manoloweb y de DotNetDeveloper, lo siento Pino y Ferny, vuestro modo es mas complicado y el formato lo puedo cambiar trankilamente despues en el PHP que traducira los datos de la BD a la page.

Aun asi da gusto aprender tantas maneras diferentes, jeje, aunke como dijo ManoloWeb es mejor ir por el Oeste...


Beinga Gracias!!


AYo!
  #35 (permalink)  
Antiguo 10/06/2003, 11:48
Avatar de Pino  
Fecha de Ingreso: abril-2003
Ubicación: Cangas do Morrazo, Pontevedra, Galicia, España, Europa, etc
Mensajes: 490
Antigüedad: 21 años
Puntos: 0
Carallo voy a tener que pasarme al otro bando (jamás ).

Como veis todo quedo perfecto, las dos formas valen .

Y como dice manolo, gracias a php per ser el mejor lenguaje .Y como a mysql y sql, etc.

Un saludo
__________________
Pïno
Webmaster de Programas Lynx
Usuario Registrado de Linux #327681

Mi cuerpo en windows, pero mi mente pensando en linux.
  #36 (permalink)  
Antiguo 10/06/2003, 12:31
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Pues sin duda .. Campos DATE (o DATETIME de Msyql y todas las funciones de tratamiento de fechas de Mysql:

http://www.mysql.com/doc/en/Date_and...functions.html
http://www.mysql.com/doc/en/Date_and_time_types.html

Sobre todo .. si algún día te dá por exportar tus datos de tu Mysql .. si los guardas en DATETIME o DATE por lo menos estarás compliendo el standard de fechas ODBC .. así q sin más problemas podrías migrar hacia otros manejadores de BD sin tener que hacer algún script por médio que te convierta formatos .. Tambien es más claro ver una fecha "DATE o DATETIME" en Mysql directametne (sobre algún administrador como phpMyAdmin por ejemplo) que no ver un TIMESTAMP o similares ..

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #37 (permalink)  
Antiguo 10/06/2003, 13:01
Avatar de jonk  
Fecha de Ingreso: julio-2002
Ubicación: Barakaldo
Mensajes: 104
Antigüedad: 21 años, 9 meses
Puntos: 0
en mi foro yo lo tengo asi la fecha con int , tomada de time() y la formateo como

date('d-m-Y',$fecha)

para la consulta de usuarios registrados hoy utilizo lo que me dijo josemi

xxxxxxxxxxxx where fecha >=UNIX_TIMESTAMP(CURDATE())

pues bien ahora estoy intentando mostrar los menajes nuevos( los comprendidos en una semana, es decir desde hoy contando 7 dias.

he calculado los segundos que son una semana, pero alahora de intentar hacer una consulta me he perdido

tando con operaciones en php cpon mysql, ¿que debo hacer para poder restar la fecha actual en segundos y la de hace 7 dias?

no se si me explico jejeje

gracias


Cita:
Mensaje Original por ferny
Te voy a dar otra respuesta, que no es exactamente lo mismo pero bueno...

En mi caso lo que hago es guardar el tiempo en formato time() con lo cual el campo de mi base de datos es un entero... Luego si quiero mostrar el tiempo por pantalla sólo le aplico la función date(), por ejemplo date("d m Y", time()); El segundo parámetro de esta función sería el valor almacenado en la base de datos, y la función date() me devolvería la fecha formateada a la que corresponde el tiempo almacenado en la base de datos

Te recomiendo eso ya que imaginate que cuando tengas 1000 registros en la base de datos quieres cambiar el formato de fecha... pues con tu forma tendrías que ir registro por registro, pero con esta otra forma sólo cambiarias los parámetros de la función date, además si quieres hacer zonas horarias con mi forma es más fácil (sólo sumar o restar múltiplos de 3600 )

Si necesitas algo más aquí estamos.

Saludos
__________________

MyWay. A mi manera
http://myway.i-barakaldo.com
  #38 (permalink)  
Antiguo 10/06/2003, 13:43
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Hola,

A ver, MySQL es muy permisivo con los tipos. Es capaz de interpretar una cadena como una fecha, siempre y cuando tenga un formato valido. Lo mismo que un entero. Y posiblemente la representacion interna de un campo date o datetime sea un varchar o un bigint. Pero, sinceramente, a modo de auto documentacion, ¿cual es mas explicativo?:

alta varchar(10),

o

alta date,

Yo creo que en el segundo quieres indicar la fecha de alta, mientras que no se que es lo que se quiere expresar en la primera.

jonk, revisa http://www.mysql.com/doc/en/Date_and...functions.html . Hay hay funciones (DATE_ADD, DATE_SUB, ...) que te permiten crear un datetime sumando o restando horas, dias, ... a otro datetime.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #39 (permalink)  
Antiguo 10/06/2003, 22:35
Avatar de Manoloweb  
Fecha de Ingreso: enero-2002
Ubicación: Monterrey
Mensajes: 2.454
Antigüedad: 22 años, 3 meses
Puntos: 5
Jonk, si miras el ejemplo que puse en uno de mis primeros post en este mensaje, te vas a encontrar con un ejemplo de un query similar que ayude a un amigo del foro a hacer... Necesitaba sacar los cumpleaños de los siguientes 7 días.

El ejemplo que puse es lo que finalmente quedó como solución a esa necesidad, así que seguramente te va a servir.

Si no, buscame o postea un msg en Bases de Datos y ahi te apoyo.

Saludos!
__________________
Manoloweb
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 05:10.