Ver Mensaje Individual
  #12 (permalink)  
Antiguo 19/10/2012, 10:54
Avatar de marlanga
marlanga
 
Fecha de Ingreso: enero-2011
Ubicación: Murcia
Mensajes: 1.024
Antigüedad: 13 años, 10 meses
Puntos: 206
Respuesta: Producir un evento sin que se conecte el usuario

No te compliques la vida. Todos esos juegos de navegador tipo ogame y demás usan un CRONJOB para hacer que se ejecute un php periódicamente en el servidor (usualmente, cada pocos segundos). Un cronjob es una herramienta que tienen algunos paneles de control de servidores, como el CPANEL, que sirven para que periódicamente se ejecute un comando en el SHELL de linux donde está corriendo dicho servidor.
Lo más fácil es usar esa orden para ejecutar un PHP, y ese PHP servirá para hacer "mantenimiento", como limpiar imágenes o archivos temporales que no sirvan para nada, borrar registros de la base de datos que ya no sirvan, hacer una copia de seguridad de ficheros y bases de datos, etc. Tú podrías usar un fichero PHP que controle la lógica del juego. Sería el "motor", por así decirlo.


Básicamente, esos juegos están hecchos así: El jugador, cuando navega, está metiendo datos en ciertas tablas. El PHP que se ejecuta con el cronjob, procesa esos datos de las tablas y actua en consecuencia actualizando a su vez más tablas.

Puedes usar AJAX en la parte del cliente (als paginas que ven los jugadores), pero si no dominas mucho el tema, mejor que la interacción del jugador con las opciones del juego las hagas todas a través de enlaces y formularios.

Algunos de esos juegos que tienen recursos, o hay cuentas atrás, en realidad no hay AJAX detrás. El PHP cuando pinta la página, sabe a que ritmo estás generando recursos (y la fecha en milisegundos desde la última actualización de ese dato en la base de datos), asi que lo único que hace es meterte un javascript que te actualice la cantidad de recursos periódicamente teniendo en cuenta el tiempo que pasó desde la última actualización.