Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Formato de fecha

Estas en el tema de Formato de fecha en el foro de Mysql en Foros del Web. Estoy modificando los valores de un foro y me encuentro con que el usuario se registró en 1221990317, y que su última visita fue 1252360260. ...
  #1 (permalink)  
Antiguo 07/09/2009, 16:07
 
Fecha de Ingreso: julio-2009
Mensajes: 75
Antigüedad: 14 años, 9 meses
Puntos: 2
Formato de fecha

Estoy modificando los valores de un foro y me encuentro con que el usuario se registró en 1221990317, y que su última visita fue 1252360260.

- ¿Alguien me puede ayudar a identificar estos valores?

Gracias de antemano.
Caminantejm
  #2 (permalink)  
Antiguo 07/09/2009, 16:14
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: Formato de fecha

El campo que tipo de dato maneja?
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #3 (permalink)  
Antiguo 07/09/2009, 16:21
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: Formato de fecha

No serán dias julianos?
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #4 (permalink)  
Antiguo 07/09/2009, 16:26
 
Fecha de Ingreso: abril-2009
Ubicación: Miami
Mensajes: 182
Antigüedad: 15 años
Puntos: 8
De acuerdo Respuesta: Formato de fecha

hola Caminantejm ...

pienso que el formato de fecha en tu base de datos es diferente al formato de fecha con que se insertó en la base de datos ... para esto te recomiendo que entres en tu phpmyadmin o cualquier administrador de base de datos, te fijes en el tipo de dato que tiene ese campo fecha, y que veas como están los datos en la base de datos, si esos números son los que capturas con tu código o son los que realmente están en la base de datos, pues creo que un campo de DATE no aceptará un numero como ese en el ....


salu2 !!!


Cita:
Iniciado por Caminantejm Ver Mensaje
Estoy modificando los valores de un foro y me encuentro con que el usuario se registró en 1221990317, y que su última visita fue 1252360260.

- ¿Alguien me puede ayudar a identificar estos valores?

Gracias de antemano.
Caminantejm
__________________
-----------------------------------
Éxitos !!! .. joao
  #5 (permalink)  
Antiguo 07/09/2009, 16:32
 
Fecha de Ingreso: julio-2009
Mensajes: 75
Antigüedad: 14 años, 9 meses
Puntos: 2
Respuesta: Formato de fecha

El tipo de dato es int(11) con 11 dígitos.
Los números que anoté están como valor. Cómo se traduce.
Sé que en el foro corresponde al 21 de septiembre de 2008 (1221990317).
En phpmyadmin es user_regdate.
Pero, ¿cuál es la traducción?

Saludos.
  #6 (permalink)  
Antiguo 07/09/2009, 16:42
 
Fecha de Ingreso: abril-2009
Ubicación: Miami
Mensajes: 182
Antigüedad: 15 años
Puntos: 8
Sonrisa Respuesta: Formato de fecha

... bueno, no entiendo como un campo int(11) guarda una fecha .. es algo extraño eso .... los tipos de datos para fecha pueden ser DATE o DATETIME, existen otros pero tienen que ver con la hora, es decir, que si guardaron la fecha en un campo tipo INT habría que ver como lo hicieron, quizá guardandolo como un número continuo, algo así como 10 septiembre del 2009 --- 10092009, y luego separar esa cadena para trabajar con ella .. pero no veo el porque, si existe el tipo de dato de fecha con el que puedes trabajar con todo sin problemas .... este user_regdate es el nombre del campo ??
es decir, recoges la "fecha" de esta forma: $fecha = recordset['user_regdate']; ??

dime, com sabes que ese número corresponde a esa fecha ???? porque lo ves en la base de datos o porque lo ves cuando haces la consulta ?????


Cita:
Iniciado por Caminantejm Ver Mensaje
El tipo de dato es int(11) con 11 dígitos.
Los números que anoté están como valor. Cómo se traduce.
Sé que en el foro corresponde al 21 de septiembre de 2008 (1221990317).
En phpmyadmin es user_regdate.
Pero, ¿cuál es la traducción?

Saludos.
__________________
-----------------------------------
Éxitos !!! .. joao
  #7 (permalink)  
Antiguo 07/09/2009, 16:53
 
Fecha de Ingreso: julio-2009
Mensajes: 75
Antigüedad: 14 años, 9 meses
Puntos: 2
Respuesta: Formato de fecha

Muy fácil.
Soy el administrador del foro. Me registré, y así lo visualizo en el foro, el 21 de septiembre de 2008. Y en el phpmyadmin, en user_regdate pone --> 1221990317

No sé si tiene algo que ver o el foro -phpBB- hace un amasijo con la fecha y la pasa a int.

Saludos.
  #8 (permalink)  
Antiguo 07/09/2009, 17:00
 
Fecha de Ingreso: abril-2009
Ubicación: Miami
Mensajes: 182
Antigüedad: 15 años
Puntos: 8
Sonrisa Respuesta: Formato de fecha

ya ... bueno, entonces lo que tienes que buscar COMO se cargaba o se carga la fecha en los que se registran en el foto, por ejemplo, supon que hay 3 campos con los que se cargaba esa fecha, AAAA, MM y DD, el algoritmo cocatenaba todo quedando de la forma AAAAMMDD, y esa variable se me ocurre que la pueden multiplicar por un número, algó así como AAAAMMDD*1500 y ahí obtienen un número, y ese número es insertado en ese campo INT, ahora bien, te digo que debes buscar el algoritmo de carga de fecha pues tendrías que hacer el proceso inverso para volver a obtener las fechas para mostrarlas, algo así como campo/1500=AAAAMMDD, esto desconcatenarlo y obtener año mes y día, no se, es solo un ejemplo, se me ocurre que esto han hecho, pero no tiene mucho sentido ....


Cita:
Iniciado por Caminantejm Ver Mensaje
Muy fácil.
Soy el administrador del foro. Me registré, y así lo visualizo en el foro, el 21 de septiembre de 2008. Y en el phpmyadmin, en user_regdate pone --> 1221990317

No sé si tiene algo que ver o el foro -phpBB- hace un amasijo con la fecha y la pasa a int.

Saludos.
__________________
-----------------------------------
Éxitos !!! .. joao
  #9 (permalink)  
Antiguo 07/09/2009, 17:05
 
Fecha de Ingreso: julio-2009
Mensajes: 75
Antigüedad: 14 años, 9 meses
Puntos: 2
Respuesta: Formato de fecha

El formato es "D d M Y, g:i a"
No sé si puede decir algo.

Saludos y gracias.
  #10 (permalink)  
Antiguo 07/09/2009, 17:23
 
Fecha de Ingreso: abril-2009
Ubicación: Miami
Mensajes: 182
Antigüedad: 15 años
Puntos: 8
Sonrisa Respuesta: Formato de fecha

ese formato que escribes se puede usar por ejemplo para capturar la fecha de HOY para los usuarios que se estén registrando en tu foro, algo así como:

$hoy = date("d/m/y H:i:s")//acá capturarás la fecha así dia/mes/año con dos cifras Ej 09, si pones Y mayuscula capturas año con 4 cifras, Ej 2009, además con la hora H:i:s hora, minutos y segundos, es decir, la variable $hoy sería:

07/09/09 13:43:48

Ahora bien, esa variable $hoy solo se podrá insertar en un campo de tipo DATETIME, aunque NO SE si insertas la variable $hoy en un campo de INT ponga ese NUMERAZO que no sabemos de donde sale ... pudieras probar insertando en tu base de datos a ver que pasa, a ver que inserta .... me explico ???




Cita:
Iniciado por Caminantejm Ver Mensaje
El formato es "D d M Y, g:i a"
No sé si puede decir algo.

Saludos y gracias.
__________________
-----------------------------------
Éxitos !!! .. joao
  #11 (permalink)  
Antiguo 07/09/2009, 17:29
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Formato de fecha

Está usando UNIX_TIMESTAMP() , que devuelve un entero el cual representa un TimeStamp en formato UNIX.
El problema es que no están usando la reconversión del formato para recuperar el DateTime correspondiente.
Esto:
Código sql:
Ver original
  1. SELECT FROM_UNIXTIME(1221990317);
Devuelve:
Cita:
"2008-09-21 06:45:17"
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #12 (permalink)  
Antiguo 07/09/2009, 17:51
 
Fecha de Ingreso: abril-2009
Ubicación: Miami
Mensajes: 182
Antigüedad: 15 años
Puntos: 8
Respuesta: Formato de fecha

aahhh ... amigo ... entonces en la carga de tu fecha se está FORMATEANDO tu fecha [seleccionar otra forma de mostrar la fecha], y da como resultado ese numerota ... entonces para obtener luego la fecha hay que "DESFORMATEAR" ese numerote, tendrías que hacer lo siguiente:


SELECT unix_timestamp('user_regdate') FROM 'user' WHERE 'id_user' = ".$tsuario // con esto lo que haces es obtener la fecha formateada en unix_timestamp

Luego, para obtener la fecha a la cual correspnde ese numerote tendrás que poner:

<?php echo date("d/m/Y", 1221990317); // Esto devolverá 21/09/2008. ?>

acá en esta última línea puedes JUGAR con el formato de la fecha que quieres que te devuelva ... en el date () quiero decir, para que te muetre en el formato que desees .... creo que ahora si llegamos al final :D ... cualquier cosa postea !!! salu2!!!


Cita:
Iniciado por gnzsoloyo Ver Mensaje
Está usando UNIX_TIMESTAMP() , que devuelve un entero el cual representa un TimeStamp en formato UNIX.
El problema es que no están usando la reconversión del formato para recuperar el DateTime correspondiente.
Esto:
Código sql:
Ver original
  1. SELECT FROM_UNIXTIME(1221990317);
Devuelve:
__________________
-----------------------------------
Éxitos !!! .. joao
  #13 (permalink)  
Antiguo 08/09/2009, 17:40
 
Fecha de Ingreso: julio-2009
Mensajes: 75
Antigüedad: 14 años, 9 meses
Puntos: 2
Respuesta: Formato de fecha

Bien, gracias por la ayuda. Ya me he enterado un poco más del tema.
- Con pasar por php en un archivo el número en cuestión me da la fecha.

Me gustaría ahora poder trasladar una fecha concreta al formato timestamp. Ya he visto que es cuestión de sumar o restar segundos. Pero, ¿hay alguna función que me lo dé directamente sin estar con operaciones?

Saludos y gracias de nuevo.
Caminantejm
  #14 (permalink)  
Antiguo 08/09/2009, 20:45
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: Formato de fecha

sigue las siguientes instrucciones para convertir todas las fechas a timestamp.

Código mysql:
Ver original
  1. mysql> create table unix_t(fecha int(11));
  2. Query OK, 0 rows affected (0.05 sec)
  3.  
  4. mysql>  insert into unix_t values(1221990317);
  5. Query OK, 1 row affected (0.05 sec)
  6.  
  7. mysql> select from_unixtime(fecha) from unix_t;
  8. +----------------------+
  9. | from_unixtime(fecha) |
  10. +----------------------+
  11. | 2008-09-21 04:45:17  |
  12. +----------------------+
  13. 1 row in set (0.00 sec)
  14.  
  15. mysql> alter table unix_t modify fecha varchar(80);
  16. Query OK, 1 row affected (0.11 sec)
  17. Records: 1  Duplicates: 0  Warnings: 0
  18.  
  19. mysql> update unix_t set fecha=cast(from_unixtime(fecha) as char);
  20. Query OK, 1 row affected (0.05 sec)
  21. Rows matched: 1  Changed: 1  Warnings: 0
  22.  
  23. mysql> select *from unix_t;
  24. +---------------------+
  25. | fecha               |
  26. +---------------------+
  27. | 2008-09-21 04:45:17 |
  28. +---------------------+
  29. 1 row in set (0.00 sec)
  30.  
  31. mysql> alter table unix_t modify fecha timestamp;
  32. Query OK, 1 row affected (0.02 sec)
  33. Records: 1  Duplicates: 0  Warnings: 0
  34.  
  35. mysql> select *from unix_t;
  36. +---------------------+
  37. | fecha               |
  38. +---------------------+
  39. | 2008-09-21 04:45:17 |
  40. +---------------------+

siguiendo estas instrucciones (con tus tablas) tendrás las fechas correctas en formato timestamp y legibles para todos los usuarios.

espero te sirva.
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #15 (permalink)  
Antiguo 09/09/2009, 14:38
 
Fecha de Ingreso: julio-2009
Mensajes: 75
Antigüedad: 14 años, 9 meses
Puntos: 2
Respuesta: Formato de fecha

Gracias huesos52.

He probado con el código y con el phpmyadmin pero no me deja. El campo del foro -phpBB- está diseñado en int(11) y no veo la forma de burlarlo. Cuando cambio según me dices, es verdad que se visualiza perfectamente la fecha en el phpmyadmin pero no en el foro.

Bueno, a ver si alguien tuviera la solución.
De todos modos, gracias de nuevo.
Caminantejm
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 09:00.