Foros del Web » Programando para Internet » PHP »

recuperar registro de una base de datos por fecha

Estas en el tema de recuperar registro de una base de datos por fecha en el foro de PHP en Foros del Web. Hola a todos, bueno tengo la siguiente consulta y es que yo estoy haciendo una seccion para que los usuarios puedan subir sus clasificados en ...
  #1 (permalink)  
Antiguo 17/05/2006, 10:05
 
Fecha de Ingreso: marzo-2004
Mensajes: 186
Antigüedad: 13 años, 8 meses
Puntos: 0
recuperar registro de una base de datos por fecha

Hola a todos, bueno tengo la siguiente consulta y es que yo estoy haciendo una seccion para que los usuarios puedan subir sus clasificados en la web, mi tabla es de

titulo
descripcion
mensajes
dia
mes
anio

el dia mes y año se quedan registrados con la funcion Date, lo que estoy tratando de hacer es que cuando la pagina jale los clasificados, verifiquer con la funciona date y jale solo los del mismo dia, y cuando se ayan acabado jale los del dia anterior, y si tambien se acaban esos que jale de el anterior, es decir que si hoy es 1 de mayo que jale del 17 hastaque no haya mas clasificados de ese dia, del 16 , hasta que acabe con los de ese dia y con los del 15 hasta que termine con los de ese dia, solo de tres dias, como podria hacer, he logrado que jale los del mismo dia con la consulta:

Código PHP:
$dia date('d');
$mes date('m');
$anio date('y');
mysql ="select * from tabla where dia = '$dia' and  mes = '$mes' and anio = '$anio'" 
para seguir jalando del mismo dia se que puedo udar while o repetir mysql_fetch array, pero no se como hacer para jalar de los otros dos dias cuando se terminen los registros del dia presente, espero haberme dejado entender, gracias por su ayuda de antemano amigos
__________________
Software a Medida
voip Locutorios
  #2 (permalink)  
Antiguo 17/05/2006, 10:15
 
Fecha de Ingreso: agosto-2003
Mensajes: 68
Antigüedad: 14 años, 3 meses
Puntos: 0
Bueno asi como lo estas plantendo veo que tiene que trabajar mucho para sacar la informacion, yo tendria un solo camplo para la fecha e inserto el campo fecha a la BD con NOW(), luego saca cada campos que coincida con la fecha...
  #3 (permalink)  
Antiguo 17/05/2006, 11:05
 
Fecha de Ingreso: abril-2006
Mensajes: 268
Antigüedad: 11 años, 7 meses
Puntos: 2
Como dice yoelis, deberias tener un solo campo para almacenar la fecha. Este campo seria de tipo DATE, DATETIME O TIMESTAMP.
Y si entendí bien lo que querés hacer, lo único que hace falta es ordernar el resultado con respecto a la fecha en orden descendente:

Código PHP:
<?
$fecha 
"una_fecha";
$resultado mysql_query("SELECT * FORM tu_tabla WHERE fecha <= $fecha ORDER BY fecha DESC"$link);
while (
$fila mysql_fetch_array($resultado)) {
...
}
?>
Saludos.
  #4 (permalink)  
Antiguo 17/05/2006, 11:49
 
Fecha de Ingreso: marzo-2004
Mensajes: 186
Antigüedad: 13 años, 8 meses
Puntos: 0
Me gusta mucho tu idea, y me va a servir un monton para lo que nesesito, pero yo no he trabajado anteriormente con los campos DATE, DATETIME O TIMESTAMP. cual seria el mas rfecomendable para hacer lo que tu me dises, y como le introdiciria la fecha, con:

date('d m y');

o de que manera, gracias de antemano por tu ayuda
saludos
__________________
Software a Medida
voip Locutorios
  #5 (permalink)  
Antiguo 17/05/2006, 12:01
 
Fecha de Ingreso: abril-2006
Mensajes: 268
Antigüedad: 11 años, 7 meses
Puntos: 2
Si sólo necesitas almacenar la fecha (y no la hora) podrías utilizar el tipo DATE. Si necesitas también la hora entoces DATETIME. Para más información podrias leer el manual de sql:

http://dev.mysql.com/doc/refman/4.1/en/datetime.html

Y para insertar la fecha actual (eso es lo que necesitas, ¿verdad?) no es necesario que utilices la funcion date() de php. Podes utilizar la función NOW() de mysql al realizar la inserción:

INSERT INTO tu_tabla VALUES (...,NOW(), ...).

Saludos.
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:08.