Foros del Web » Programando para Internet » PHP »

Funcion Hora y Fecha

Estas en el tema de Funcion Hora y Fecha en el foro de PHP en Foros del Web. Lo que necesito es lo siguiente y espero me puedan ayudar, necesito crear una pagina la cual se actualize o se visualize a las 4:00 ...
  #1 (permalink)  
Antiguo 18/09/2003, 18:22
 
Fecha de Ingreso: septiembre-2003
Mensajes: 6
Antigüedad: 20 años, 7 meses
Puntos: 0
Funcion Hora y Fecha

Lo que necesito es lo siguiente y espero me puedan ayudar, necesito crear una pagina la cual se actualize o se visualize a las 4:00 pm todo los dias (es para un proyecto de la escuelal), la cuestion en particular es esta:

Se modificaria la page en la mañana (aprox. 12:00 pm) pero que no se viera la actualizacion sino hasta las 4, Cluster me ha dicho que se hace con la funcion Dato y Time, pero se me olvido decirle que soy novato dentro del PHP asi que no se como hacerlo, les pido de favor que si pueden ayudarme lo hagan.

aTONINO
  #2 (permalink)  
Antiguo 18/09/2003, 18:38
Avatar de nuevo  
Fecha de Ingreso: mayo-2003
Ubicación: Spain
Mensajes: 2.009
Antigüedad: 20 años, 11 meses
Puntos: 2
a ver--- no soy Cluster ni le llego a la suela del zapato... pero quitas te pueda ayudar....

tu quieres que ha una hora exacta y despues se vea una web no?

y que antes de esa hora no se vea.... y salga otra... o es la misma sin actualiar....
__________________
3w.valenciadjs.com
3w.laislatv.com
  #3 (permalink)  
Antiguo 18/09/2003, 18:44
 
Fecha de Ingreso: septiembre-2003
Mensajes: 6
Antigüedad: 20 años, 7 meses
Puntos: 0
Mira seria algo asi como un tablon de mensajes por asi decirlo, el mensaje se pondria a las 12 y que no se viera hasta las 4, pero mientras tanto que se vieran los mensajes anteriores (todos los dias seria la misma rutina, poner mensaje y que se viera hasta las 4 de la tarde, mientras tanto que se actualiza que se vieran los mensajes de los dias anteriores)

Lo que necesito en si es como utilizar la funcion date o time para que se actualize a las 4 automaticamente.

Espero darme a explicar.

aTONINO
  #4 (permalink)  
Antiguo 18/09/2003, 18:58
 
Fecha de Ingreso: agosto-2003
Mensajes: 272
Antigüedad: 20 años, 7 meses
Puntos: 0
Mira, no es algo complicado de hacer. Pero tener en cuenta lo siguiente.
Poner atencion en que server lo vas a publicar por que si lo haces en un server queno esta en tu uso horario debes modificar la fecha y la hora....

Hora bien.
Como lo vas a actualizar osea a lo que voy es que es lo que queres hacer. por ejemplo si lo actualizas vos o los daos van a ser ingresados por terceros??????

Cuantos campos en la tabla vas a tener?????
y de que tipo de datos van a contener?

Creo que lo mas facil es hacer un script que bueque dentro del directorio "actualizaciones" archivos .html que el nombre sea algo del estilo 200309181600 esto es año 2003 mes 09 dia 18 hora 16 minutos 00, el srcipt recorre ese directorio y obtenes los nombres de los archivos que corresponden a las actualizaciones luego compras en mismo formato con la fecha hora actual si todo te da verdadero mostras el contenido de ese archivo si no dejas el que estaba.

esto es bastante facil de hacer........
Sino........MySQL con tigo.
Saludos y si te gusta la solucion te puedo dar una mano.
bye
  #5 (permalink)  
Antiguo 18/09/2003, 19:08
Avatar de nuevo  
Fecha de Ingreso: mayo-2003
Ubicación: Spain
Mensajes: 2.009
Antigüedad: 20 años, 11 meses
Puntos: 2
ok, creo que con esos datos ya se lo que quieres realmente...

mira, yo te voy hacer un ejemplo muy sencillo con una condicion, luego seguro que vendra un maestro de verdad y mejorara o dara otra opinion..."que me parece estupendo".

venga, yo cuando trabajo con fechas lo que hago es crear un nuevo campo en la tabla, un campo DATETIME, "hay mas formas de hacerlo", en ese campo como el nombre indica, se pone la fecha y la hora, con lo cual es perfecto para lo que queremos...

Código PHP:
$fecha_modif date("Y-m-d H:i:s", (time()+43200)); 
de esta manera lo que hago es sumar a la fecha de ahora, osea en este momento, le sumo 43200 segundos, que en este caso son 12 horas.... y eso lo grabo en la tabla en el campo DATETIME.

ejemplo:

hora actual: 02:31:00

ahora le sumo las 12 horas en segundos...
2003-09-19 02:31:00 + 43200

osea que quedaria asi
2003-09-19 14:31:00

entonces, cuando muestres los resultados, pones una condicion en el query y le dices que solo muestre los que tengan la fecha caducada, que seran todos los de hoy y los de ayer que han caducado...
__________________
3w.valenciadjs.com
3w.laislatv.com
  #6 (permalink)  
Antiguo 18/09/2003, 19:26
Avatar de nuevo  
Fecha de Ingreso: mayo-2003
Ubicación: Spain
Mensajes: 2.009
Antigüedad: 20 años, 11 meses
Puntos: 2
se me olvido.... el query de mysql por si no lo tienes claro...

Código PHP:

$consulta 
mysql_query("SELECT * FROM tutabla WHERE fecha<='$fecha_modif'") or die("error mysql"); 

seria algo asi, aunq tambien podias sumar un dia a la fecha de hoy y poner siempre por omision las 16:00 de la tarde como tu querias, ahora ya es cosa de tu cabeza y de lo que quieras inventar, un saludo
__________________
3w.valenciadjs.com
3w.laislatv.com
  #7 (permalink)  
Antiguo 19/09/2003, 17:11
 
Fecha de Ingreso: septiembre-2003
Mensajes: 6
Antigüedad: 20 años, 7 meses
Puntos: 0
Amigos gracias por contestar, pero diran que soy tonto o retardado, pero soy muy novato en lo del PHP y me gustaria que me lo explicaran mas paso a paso ya que repito no tengo nada de conocimientos en php, lo que pasa es lo necesito por que un profesor nos pidio un trabajo que sera el 50% de mi calificion anual y todos los dias tenemos entregarle los avances que hemos hecho, pero como otro equipo tiene el mismo trabajo no queremos que se vean antes nuestros avances debido a que nos robaran lo nuestro (no se si me de a entender pero si lo entienden creanme que si me robaran nuestro trabajo si tienen oportunidad)

Por favor si pueden expliquenmelo mas paso a paso.

aNTONINO
  #8 (permalink)  
Antiguo 19/09/2003, 19:23
 
Fecha de Ingreso: agosto-2003
Mensajes: 272
Antigüedad: 20 años, 7 meses
Puntos: 0
haber qures que te lo expliquemos o que te enseñemos a programar son dos cosas distintas.
Que sabes de programacion??
Saludos
  #9 (permalink)  
Antiguo 20/09/2003, 20:17
Avatar de Mickel  
Fecha de Ingreso: mayo-2002
Ubicación: Lima, Peru
Mensajes: 4.619
Antigüedad: 21 años, 11 meses
Puntos: 7
el primer paso que deberias seguir seria crear la bd si es que no la tienes.

Que bd soporta el servidor?
Que datos se van a almacenar?
__________________
No tengo firma ahora... :(
  #10 (permalink)  
Antiguo 05/10/2003, 17:21
 
Fecha de Ingreso: agosto-2003
Mensajes: 35
Antigüedad: 20 años, 8 meses
Puntos: 0
unaicito te echa una mano

AL CUELLO

Esto es lo que tienes que hacer paso a paso

Utiliza la función setlocale para establecer tu hora gtm (depende de donde estes, yo estoy en gtm+1)
Así siempre dara la hora correcta.

Usa $horaencendido=strftime("%H"); para saber la hora actual

Haz un if

if ((16<=$horaencendido<=23)||($horaencendido<16)) {

Muestra la página actualizada, por lo que aquí mostraremos todos los anuncios de la base de datos, uno por uno.

}else{

no muestra la página actualizada, por lo que NO MOSTRAREMOS los anuncions CON FECHA DE HOY. Como?
pues con un if (myrow[fecha']=strftime('%Y-%m-%d'))

Ten en cuenta que myrow['fecha'] es un campo de la base de datos, que acabas de leer justo para esa noticia, y así saber qué día fue editada. A la hora de añadir esa noticia le digiste que agregara al campo de la DB 'fecha' la variable $fecha=strftime('%Y-%m-%d');, para poder compararla ahora.

Esto por cada noticia.

}

Creo que no se me olvida nada, no? No se. Bueno
Por lo menos lo he hecho paso a paso como dijiste.
Es script es de lo más sencillo, pero si es un trabajo de clase no deberías investigar tu, no pedir que te digan cómo hacerlo?
Programar es más pensar que saber cuatro funciones de código. El código se lo puede aprender todo el mundo. Tu tambien puedes !!! ESTUDIA VAGO !!!!
__________________
Estoy buscando currelo, y soy experto en php, mysql, vb6, y me manejo muy bien con flash+actionscript, fireworks, photoshop, y algunas cosillas más. Otras cosillas notambien.

Si necesitan scripts o programas php decidme, que no tengo pasta !!!

Última edición por unaicito; 05/10/2003 a las 17:39
  #11 (permalink)  
Antiguo 04/02/2004, 18:10
Avatar de derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 6 meses
Puntos: 45
Haber, harias una bdd con los mensajes del foro, y cuando se inserten pones en un campo el dia de insercion. Para mostrar la pagina seleccionas con una instruccion de sql todos los campos de los dias anteriores (hoy-1) y asi no se muestran los de hoy hasta mañana. Lo de las 12 y las 16 seria lo mismo pero con precision de horas no de dias.

Sencillo, pero si no sabes php no hay nada que hacer ; )
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.
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 01:50.