Ir al contenido


Foto

Problema con campo tipo date


  • Por favor identifícate para responder
7 respuestas en este tema

#1 Pili

Pili

    Member

  • Miembros
  • PipPip
  • 44 mensajes
  • LocationCiudad de México

Escrito 06 mayo 2014 - 10:11

Hola a todos!
Nuevamente estoy atorada.
Tengo una base de datos que tiene un campo de tipo date con valores almacenados como 2014-04-25, 2014-04-28 etc.
al querer imprimir la fecha (dentro de un for ) todos lo campos aparecen perfecto pero me pone la fecha de hoy en lugar del contenido de mi campo "fecha".
Ejemplo:


delphi
  1. <?php echo $evento[$i]["nombre"]; ?> <br />
  2. <?php echo "Lugar".$evento[$i]["lugar"]; ?><br />
  3. <?php echo "Fecha:".$evento[$i]["fecha"]; ?><br />



¿qué estoy haciendo mal?
Mil gracias de antemano


  • 0

#2 poliburro

poliburro

    Advanced Member

  • Administrador
  • 4.945 mensajes
  • LocationMéxico

Escrito 06 mayo 2014 - 09:21

Podrías colocar la consulta para verificar que todo por allí vaya bien.
  • 0

#3 Pili

Pili

    Member

  • Miembros
  • PipPip
  • 44 mensajes
  • LocationCiudad de México

Escrito 06 mayo 2014 - 10:19

Poliburro mi eterno salvador!
Gracias por responder
Aquí está. La tabla se llama calendario y estoy consultado los eventos de determinada asociación que está en en la tabla asociaciones:
En mi archivo de clases:


delphi
  1. public function listar_calendario($id_a)
  2. {
  3. $sql="select * from calendario AS c
  4. INNER JOIN  asociaciones AS a
  5. ON  c.id_asoc = a.id_asoc
  6. WHERE c.id_asoc = $id_a
  7. AND c.autoriza ='1' order by c.id_evento desc";
  8. $res=mysql_query($sql,Conectar::con());
  9. while ($reg=mysql_fetch_assoc($res))
  10. {
  11. $this->eventos[]=$reg;
  12. }
  13. return $this->eventos;
  14. }



Lo llamo así:



delphi
  1. $tra=new Trabajo();
  2. $evento=$tra->listar_calendario($id_a);
  3. y este es mi for:
  4. <?php for ($i=0;$i<sizeof($evento);$i++)
  5. {
  6.  
  7. echo $evento[$i]["nombre"];
  8.  
  9. echo "Lugar".$evento[$i]["lugar"];
  10.  
  11. echo "Fecha:".$evento[$i]["fecha"];
  12. }
  13. ?>



Como siempre, agradezco muchísimo tu respuesta!

  • 0

#4 poliburro

poliburro

    Advanced Member

  • Administrador
  • 4.945 mensajes
  • LocationMéxico

Escrito 07 mayo 2014 - 08:47

De entrada te recomiendo que no uses Select *. Prueba colocando los campos que debe devolver la consulta.
  • 0

#5 Delphius

Delphius

    Advanced Member

  • Administrador
  • 6.295 mensajes
  • LocationArgentina

Escrito 07 mayo 2014 - 09:06

No estoy muy al tanto de PHP pero viendo ese script no debiera haber problema alguno en mostrar la fecha como corresponde.
Si tu dices que muestra bien el resto de los campos pero en el tipo date solamente muestra en su lugar la fecha de hoy en lo primero que pensaría es que se debe a dos cosas:
1)que en el diseño de tu base de datos has declarado que por defecto el valor a asumir para el campo corresponda a la fecha en curso.
2) Además, me da a entender que no insertas o almacenas la fecha correspondiente al momento de hacer el alta.

Por 1 y 2 se intuye que al momento de presentar los datos, como no se ha almacenado ninguna fecha y dicho campo por defecto sea igual a la fecha en curso, suena un tanto lógico y de esperarse que la fecha a mostrar sea la actual y no otra.

Para descartar esto nos deberías describir el diseño de la tabla y mostrar el script correspondiente al alta.

Saludos,
  • 0

#6 poliburro

poliburro

    Advanced Member

  • Administrador
  • 4.945 mensajes
  • LocationMéxico

Escrito 07 mayo 2014 - 09:39

Para descartar esto nos deberías describir el diseño de la tabla y mostrar el script correspondiente al alta.

Saludos,


cierto amigo, habrá que revisar si el dato de la fecha no viene ya desde la misma tabla.
  • 0

#7 Pili

Pili

    Member

  • Miembros
  • PipPip
  • 44 mensajes
  • LocationCiudad de México

Escrito 07 mayo 2014 - 10:11

Gracias a los dos por su interés y paciencia!
No fue necesario revisar el diseño. El problema se resolvió con la primera observación de poliburro... reemplacé el * del select por los  campos y como por arte de magia me apareció la fecha del registro, no la actual :ap:

Nuevamente mil gracias!
  • 0

#8 Delphius

Delphius

    Advanced Member

  • Administrador
  • 6.295 mensajes
  • LocationArgentina

Escrito 07 mayo 2014 - 11:22

Gracias a los dos por su interés y paciencia!
No fue necesario revisar el diseño. El problema se resolvió con la primera observación de poliburro... reemplacé el * del select por los  campos y como por arte de magia me apareció la fecha del registro, no la actual :ap:

Nuevamente mil gracias!

Si es por causa del asterístico entonces es un terrible y serio BUG por parte de PHP; al menos en lo que es el paquete de comunicación con la base de datos de MySQL. Fíjate si no hay alguna actualización, o revisión "menor" qu hayan liberado que corrija este problema.
No me parece normal semejante comportamiento, pero tomo nota para cuando deba empezar a estudiar PHP.

Saludos,
  • 0




IP.Board spam blocked by CleanTalk.