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

Cambiar estilo de Fecha en MySQL o PHP?

Estas en el tema de Cambiar estilo de Fecha en MySQL o PHP? en el foro de Mysql en Foros del Web. Hola! Bueno, yo otra vez xD . Jajaja lo que pasa hoy es que tengo un campo para fecha (DATE) y cuando introduzco la función ...
  #1 (permalink)  
Antiguo 25/09/2012, 09:49
 
Fecha de Ingreso: septiembre-2012
Ubicación: Jalisco, México
Mensajes: 38
Antigüedad: 11 años, 7 meses
Puntos: 1
Pregunta Cambiar estilo de Fecha en MySQL o PHP?

Hola! Bueno, yo otra vez xD . Jajaja lo que pasa hoy es que tengo un campo para fecha (DATE) y cuando introduzco la función desde PHP "CURDATE()" para que me guarde la fecha actual, al consultar aparece "0000-00-00". En realidad no sé porqué me aparecen solo ceros, un amigo me comentó que porque la hora del sistema de mi computadora está en "español" (por decirlo así) y el de MySQL está en estilo "Estadounidense", así que resultan incompatibles y no guarda nada.

Hay forma de (ya sea con PHP o en el mismo campo de MySQL) que me transforme la fecha de mi sistema a AAAA_MM_DD para que se guarde, o bien que cuando se vaya a guardar, se convierta a DD_MM_AAAA el de MySQL?

Sinceramente no me importa mucho el orden, lo que quiero es que la fecha SE GUARDE SOLA, en serio, no importa si es AAAA_MM_DD, pero igual si se puede, quiero establecer una fecha en formato DD/MM/AAAA en ese campo, jajajajjaa (siendo que se transforme o no; siempre los guarda como AAAA/MM/DD).

Código:
Código PHP:
mysql_query("INSERT INTO ventas(fecha) VALUES('CURDATE()')"$conexion) or die(mysql_error()); 
Al consultarlo:
Código:
mysql> SELECT * FROM ventas;
+-----+------------+
|  id |   fecha    |
+-----+------------+
|  1  | 0000-00-00 |
+-----+------------+
Me suelta 0000-00-00. Quiero que se guarde la FECHA de cuando se realizó la inserción.

Ah perdon si esta revoltoso, espero haberme explicado :D
  #2 (permalink)  
Antiguo 25/09/2012, 10:00
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, 4 meses
Puntos: 2658
Respuesta: Cambiar estilo de Fecha en MySQL o PHP?

No estás poniendo la fecha actual (CURDATE(), sino una cadena que dice "CURDATE()".
Mira con atención y procura hacer pruebas en el MySQL y no desde PHP:
Código MySQL:
Ver original
  1. INSERT INTO ventas(fecha)
  2. VALUES('CURDATE()')
¿Ves que el CURDATE está resaltado como cadena de testo? Bueno, esto es lo que debería haber:
Código MySQL:
Ver original
  1. INSERT INTO ventas(fecha)
¿Notas la diferencia?
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 25/09/2012, 10:02
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años
Puntos: 300
Respuesta: Cambiar estilo de Fecha en MySQL o PHP?

Prueba así.
Código MySQL:
Ver original
  1. INSERT INTO ventas(fecha) VALUES(CURDATE())
las fechas en las bases de datos se almacenan 2012/03/30
es decir, año, mes,día.

Luego puedes recupararlas con el formato que quieras
Código MySQL:
Ver original
  1. SELECT DATE_FORMAT(fecha, '%d-%m-%Y')

Mira funciones de fecha en el manual de MySQL
  #4 (permalink)  
Antiguo 25/09/2012, 10:04
 
Fecha de Ingreso: septiembre-2012
Ubicación: Jalisco, México
Mensajes: 38
Antigüedad: 11 años, 7 meses
Puntos: 1
Respuesta: Cambiar estilo de Fecha en MySQL o PHP?

Vale! Gracias ya funcionó!! :D!! , pero hay manera de cambiarlo al forrmato DD_MM_AAAA? Intenté con varios tutoriales pero no me funcionó :S
  #5 (permalink)  
Antiguo 25/09/2012, 10:05
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años
Puntos: 300
Respuesta: Cambiar estilo de Fecha en MySQL o PHP?

No para almacenarlo, pero sí al recuperarlo. Primero insertas como te hemos recomendado y luego prueba esto
SELECT DATE_FORMAT(fecha, '%d-%m-%Y') fechaespanol FROM tutabla

Última edición por jurena; 25/09/2012 a las 10:09 Razón: añadir el alias
  #6 (permalink)  
Antiguo 25/09/2012, 10:08
 
Fecha de Ingreso: septiembre-2012
Ubicación: Jalisco, México
Mensajes: 38
Antigüedad: 11 años, 7 meses
Puntos: 1
Respuesta: Cambiar estilo de Fecha en MySQL o PHP?

Perfecto! Ah amo este foro :') . Como puedo pasar eso a un PHP cuando lo esté consultando? El código que tengo es algo así:

Código PHP:
Ver original
  1. $resultado = mysql_query("SELECT * FROM articulo", $conexion);
  2. while ($fila = mysql_fetch_array($resultado)) {
  3. echo "<tr><td width=\"15%\" align=\"center\">" .
  4.     $fila["id"] . "</td>";
  5. echo "<td width=\"17%\" align=\"center\">" .
  6.     $fila["fecha"] . "</td>";
  #7 (permalink)  
Antiguo 25/09/2012, 10:09
 
Fecha de Ingreso: septiembre-2012
Ubicación: Jalisco, México
Mensajes: 38
Antigüedad: 11 años, 7 meses
Puntos: 1
Respuesta: Cambiar estilo de Fecha en MySQL o PHP?

Perdón, donde dice "articulo" es "ventas" xD
  #8 (permalink)  
Antiguo 25/09/2012, 10:10
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años
Puntos: 300
Respuesta: Cambiar estilo de Fecha en MySQL o PHP?

Fíjate en que he añadido un alias como si fuera el nombre del campo
Código MySQL:
Ver original
  1. SELECT DATE_FORMAT(fecha, '%d-%m-%Y') fechaespanol FROM ventas
Ahora te traes $fila["fechaespanol"] y ya lo tienes. Por favor, no escribas código PHP en este foro.
  #9 (permalink)  
Antiguo 25/09/2012, 10:29
 
Fecha de Ingreso: septiembre-2012
Ubicación: Jalisco, México
Mensajes: 38
Antigüedad: 11 años, 7 meses
Puntos: 1
Respuesta: Cambiar estilo de Fecha en MySQL o PHP?

Emm sinceramente no entendí muy bien eso del alias... Hice esto en php, a ver si está bien...:

Código PHP:
Ver original
  1. while ($fila = mysql_fetch_array($resultado2)) {
  2.     mysql_query("SELECT DATE_FORMAT(fecha, '%d-%m-%Y') fechaespanol FROM ventas", $conexion);
  3. echo "<tr><td width=\"15%\" align=\"center\">" .
  4.     $fila["id"] . "</td>";
  5. echo "<td width=\"17%\" align=\"center\">" .
  6.     $fila["fechaespanol"] . "</td><tr>";
  #10 (permalink)  
Antiguo 25/09/2012, 10:36
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años
Puntos: 300
Respuesta: Cambiar estilo de Fecha en MySQL o PHP?

Por favor, Hydrako, no escribas código PHP en este foro. Está prohibido. Si tienes alguna duda sobre PHP, consúltala en el foro PHP. Por lo que se refiere a la base de datos, fechaespanol, el alias (sobrenombre puesto en este caso a la función), funcionaría como nombre de columna a todos los efectos.
  #11 (permalink)  
Antiguo 26/09/2012, 04:25
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, 4 meses
Puntos: 2658
Respuesta: Cambiar estilo de Fecha en MySQL o PHP?

Cita:
Iniciado por Hydrako Ver Mensaje
Emm sinceramente no entendí muy bien eso del alias... Hice esto en php, a ver si está bien...:

Código PHP:
Ver original
  1. while ($fila = mysql_fetch_array($resultado2)) {
  2.     mysql_query("SELECT DATE_FORMAT(fecha, '%d-%m-%Y') fechaespanol FROM ventas", $conexion);
  3. echo "<tr><td width=\"15%\" align=\"center\">" .
  4.     $fila["id"] . "</td>";
  5. echo "<td width=\"17%\" align=\"center\">" .
  6.     $fila["fechaespanol"] . "</td><tr>";
Un alias es un nombre que suplanta el de un elemento de base de datos invocado en el SELECT o en el FROM, sea para simplificar la escritura, para poder realizar reinvocaciones sin conflicto, o para asignarles nombres de salida que puedan ser usados con facilidad.
En el caso, te va a dar error porque la consulta no contiene ninguna columna denominada "ID", ya que sólo se está llamando a una de fecha, y la misma se llama "fechaespanol", que es el nombre que reemplaza en la tabla resultado a toda la función "DATE_FORMAT(fecha, '%d-%m-%Y')".

Sugerencia: Antes de seguir trabajando en PHP con consultas, te conviene estudiar lo básico de SQL, porque se trata de lenguajes distintos e independientes. No vas a manejar correctamente tu desarrollo si no estudias algo del lenguaje de consultas.

Por cierto, el tema de los alias es MUY básico. Tan básico que lo vas a encontrar desde el princpio en cualquier tutorial elemental.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: estilo, fecha, php, select, sql, campos
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 19:20.