Foros del Web » Programando para Internet » PHP »

tiempo en realizar una accion

Estas en el tema de tiempo en realizar una accion en el foro de PHP en Foros del Web. hola buenos dias estoy creando un juego web, principalmente utilizando php y mysql, y queria saber como puedo hacer que un edificio tarde cierto tiempo ...
  #1 (permalink)  
Antiguo 05/07/2011, 09:20
RG1
 
Fecha de Ingreso: octubre-2009
Mensajes: 12
Antigüedad: 15 años
Puntos: 0
tiempo en realizar una accion

hola buenos dias

estoy creando un juego web, principalmente utilizando php y mysql, y queria saber como puedo hacer que un edificio tarde cierto tiempo en subir de nivel o una batalla cierto tiempo en lucharse.

tenia pensado algo asi como un script con cuenta atras que al finalizar hiciera un update con php y se realizara la accion.

no tengo muy claro si se puede hacer con php, sino se puede no me importa hacerlo con otro lenguaje.

gracias, por favor ayudenme
  #2 (permalink)  
Antiguo 05/07/2011, 09:23
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: tiempo en realizar una accion

Claro que se puede conseguir con PHP, pero no por si solo.

Es malo dejar abierto el navegador para que el tiempo pase, y luego se ejecute el proceso, pero es posible.

La mejor opción sería tener una cola de acciones programadas, e irlas ejecutando mediante un servicio CRON.

Así, aunque cierres el navegador el proceso se ejecutará cierto tiempo, y ahí es donde debes procesar todo lo pertinente.

Te invito a investigar al respecto.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 05/07/2011, 09:34
RG1
 
Fecha de Ingreso: octubre-2009
Mensajes: 12
Antigüedad: 15 años
Puntos: 0
Respuesta: tiempo en realizar una accion

mmm estoy un poco perdidon con eso del CRON ¿podrias darme alguna web donde explique que es o como usarse?

es que no encuentro mucha informacion :S
  #4 (permalink)  
Antiguo 05/07/2011, 10:21
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 8 meses
Puntos: 101
Respuesta: tiempo en realizar una accion

Por lo que leo, te conviene usar javascript + ajax.
  #5 (permalink)  
Antiguo 05/07/2011, 10:50
 
Fecha de Ingreso: marzo-2011
Mensajes: 68
Antigüedad: 13 años, 8 meses
Puntos: 9
Respuesta: tiempo en realizar una accion

Podés guardar en la DB el tiempo en que la batalla terminaría o el edificio se construiría. Si todavía no pasó ese tiempo no actualizas nada y si ya paso actualizas (edificio construido, batalla terminada, etc)..

Saludos!
  #6 (permalink)  
Antiguo 05/07/2011, 10:56
RG1
 
Fecha de Ingreso: octubre-2009
Mensajes: 12
Antigüedad: 15 años
Puntos: 0
Respuesta: tiempo en realizar una accion

Cita:
Iniciado por mayid Ver Mensaje
Por lo que leo, te conviene usar javascript + ajax.
ya me imaginaba algo asi, pero el problema es que nose como hacerlo, he estado buscando y no encuentro nada :S
  #7 (permalink)  
Antiguo 05/07/2011, 11:11
RG1
 
Fecha de Ingreso: octubre-2009
Mensajes: 12
Antigüedad: 15 años
Puntos: 0
Respuesta: tiempo en realizar una accion

Cita:
Iniciado por FFabre Ver Mensaje
Podés guardar en la DB el tiempo en que la batalla terminaría o el edificio se construiría. Si todavía no pasó ese tiempo no actualizas nada y si ya paso actualizas (edificio construido, batalla terminada, etc)..

Saludos!
esa es otra buena opcion pero como hago para que se acctualize?
  #8 (permalink)  
Antiguo 05/07/2011, 11:25
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 14 años, 3 meses
Puntos: 202
Respuesta: tiempo en realizar una accion

Cita:
Iniciado por RG1 Ver Mensaje
esa es otra buena opcion pero como hago para que se acctualize?
Los juegos online suelen hacerse algo tediosos entre seguridad, diseño etc.
Espero que tengan las partes bien distribuidas o sea un juego simple.

Puedes guardar la fecha y hora en la base de datos y cuando inicie el usuario la sesión comprobar...
Pero claro, obviamente también tendrás que ejecutar esas actualizaciones si deja el navegador abierto y el tiempo pase, no sólo en el login, por tanto necesitarás usar JS y AJAX además de PHP.

Si como dices no sabes como hacerlo con javascript ni Ajax entonces o no lo realizas o aprendes. Información hay, pero obviamente no va a estar el juego que queramos realizar siempre a disposición de todos los usuarios.
__________________
Pensaba que internet era una gran biblioteca de sabiduría, hasta que comprendí que un libro no puede tener mil páginas llenas de faltas de ortografía... :(
  #9 (permalink)  
Antiguo 05/07/2011, 14:33
 
Fecha de Ingreso: marzo-2011
Mensajes: 68
Antigüedad: 13 años, 8 meses
Puntos: 9
Respuesta: tiempo en realizar una accion

Cita:
Iniciado por RG1 Ver Mensaje
esa es otra buena opcion pero como hago para que se acctualize?
En realidad necesitas 2 cosas. Primero ajax para que se actualize si el usuario es de esos que mira el reloj como un enfermo aver cuando se termina su construcción. Segundo como te decía, guardas en que momento el evento terminó. Si el tiempo actual es mayor a ese momento actualizas. ¿Cómo actualizas?, bueno, en cada momento que sea útil la información del evento el programa tendría que encargarse de que este actualizado (lease, actualizar y después seguir con las acciones).

Etiquetas: realizar, acciones
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 22:36.