Duvida - Usar ajax para corer script php

Bernardo78

Power Member
Boas malta, eu fiz um post no stack overflow acerca do assunto (nao sei se estou no subforum correcto mas tendo em conta que é web develop) e a minha questão é o seguinte:

-eu tenho de conseguir avaliar em tempo real (o meu objectivo seria a cada 5 segundos) se uma auction no meu site ja passa do tempo limite , isto é , preciso de saber para anunciar o vencedor, mover o item para os auctions terminados/vendidos, etc.

A minha questao ja esta no stackoverflow aqui - http://stackoverflow.com/questions/37368363/looking-to-make-a-ajax-script-that-ends-auctions .

Se me pudessem dar algumas luzes, eu nao sou grande maquina a mexer em ajax mas pronto.

Obrigado!
 
Antes de ir à pergunta do Stack Overflow também já ia sugerir usar o cron. Alguma razão para preferires outra solução? Isto apenas para verificar se já passou do tempo limite e marcar, depois teria de haver outro mecanismo para avisar o cliente (possivelmente os sockets, como sugeriu o @Nada ).
 
EU estou a trabalhar em mamp no meu sistema mas depois tenho de passar o projecto para o servidor apache da faculdade, e nunca mexi em cron. como faria entao?
 
O que eu estava a pensar era passar como parametro em ajax o datetime actual para comparar no ficheiro php para executar as queries. è possivel certo?
 
EU estou a trabalhar em mamp no meu sistema mas depois tenho de passar o projecto para o servidor apache da faculdade, e nunca mexi em cron. como faria entao?

Com o cron a ideia seria correr um script regularmente, verificar se já passou o tempo, e guardar algures (base de dados, ou onde quer que estejas a guardar) essa informação. Não tinha reparado que querias fazer isso de 5 em 5 segundos. Aí o cron não é indicado (trabalha de minuto a minuto), mas podes usar a mesma ideia com um daemon que esteja a correr permanentemente.

O que eu estava a pensar era passar como parametro em ajax o datetime actual para comparar no ficheiro php para executar as queries. è possivel certo?

Possível é, mas digo o mesmo que te disseram no Stack Overflow. Se tiveres vários utilizadores, cada um está a fazer a query desnecessariamente, porque bastava fazer uma vez, do lado do servidor.
 
Acho que devias ir pelo que foi dito.. sockets para o lado do cliente (mysql nao tem eventos de alteração de dados, mas podes usar um "hack" que é ver sempre que existe uma alteração da tabela, não é a melhor forma tendo em conta a performance, mas funciona bem para coisas simples)
E usar cron caso seja no minimo 1min ou um daemon para menos que isso :)
 
Back
Topo