Quase.. Agora entendi a uitilização do hidden, mas realmente não faz sentido ser num hidden, se não é algo que você vai enviar junto com a requisição, não tem pra que por no formulário, poderia ser array javascript com o id de cada produto na tela e o seu tempo de término.
Quanto a requisição de sincronização, não me parece fazer sentido querer sincronizar a hora do usuário com a do servidor, só iria reconsultar o tempo restante do produto (da mesma forma que você faz na primeira requisição) e voltar a aplicar o cronometro em cima desse tempo. Até por que, dessa forma você não se preocupa com fuso horário, abrindo a possibildade pra jogadores de outros países inclusive, além disso, uma consulta ao banco a cada 10 minutos não significa nada, e a quantidade de transferência de dados entre o server e o client, por ajax, continuaria sendo a mesma. 2010/10/21 Edinho Almeida <[email protected]> > Oi Eric, > O fluxo que imaginei mas não sei se é o melhor: > A página é carregada ( busca no banco de dados os detalhes do produto e seu > horário de fim da promoção ), mostra o produto para o cliente, e deixa o > horário num campo hidden (ou uma variável em javascript mesmo) com o horário > do fim. O javascript 'onload' pega a hora atual do cliente e começa a > contagem regressiva mostrando o relógio. > [até aqui o cliente não clicou em nada = uma requisição com consulta ao > banco] > De tempos em tempos, por exemplo, 10 minutos, há uma requisição ajax > somente para sincar a hora atual do cliente com a hora do servidor. > [até aqui o cliente ainda não clicou em nada houve + uma requisição somente > para retornar a hora do servidor sem consulta ao banco; > A javascript confere a hora que está considerando como atual com a do > servidor ] > Quando cliente clicar em "quero este item" aí vai um request e no servidor > há a validação do produto, hora do fim, etc...consultados no banco de dados. > > Abs > Edinho Almeida > 11 8018-8019 > > > 2010/10/21 Eric Saboia <[email protected]> > >> Edinho, >> 1 - Como assim sem consulta ao banco? você vai gravar os produtos e tempo >> de término como? >> 2 - Concordo nesse aspecto, mas em 10 minutos, dúvido que um contador >> javascript fique mais do que 3 segundos desincronizado, por isso falei a >> pouco que no máximo deveria existir esse tipo de sincronização em intervalos >> de aproximadamente 10 minutos, e não segundo a segundo. >> 3 - Se travar, acredito que a contagem pare sim, mas acho que isso são >> exceções, não vale a pena sacrificar o desempenho de um serviço por >> exceções, é melhor perder esses clientes. >> 4 - Continuo sem entender o porque do campo hidden. >> >> >> 2010/10/21 Edinho Almeida <[email protected]> >> >>> Oi Eric, >>> 1 - Acho (sem testar) que pode ser bem mais rápida um requisição sem >>> consulta ao banco. Inclusive pode ser melhor ainda fazer um php puro para >>> retornar somente a hora. >>> 2 - Me refiro a segurança de que o relógio informado ao cliente esteja >>> batendo com a hora do servidor. O cliente pode ver lá que "Faltam 30 >>> segundos" então dá um submit e em 3 segundos a página retorna e diz "tempo >>> encerrado". Gera frustação ao cliente. >>> 3 - Meu laptop celeron trava. Mas realmente se isso faz uma regressiva no >>> javascript congelar eu não testei. Em vez de regressiva fazer a cada segundo >>> uma nova leitura do horário do javascript deve resolver. Mas insisto ainda >>> em saber se o horário do cliente está batendo com o do servidor. >>> 4 - Concordo com você. A validação do lado do servidor sempre é >>> obrigatória. Não faço nada sem validar no servidor. >>> O campo hidden seria para evitar a consulta ao banco durante a >>> requisição. No submit é feita uma consulta ao banco para conferir o horário >>> de fim. >>> >>> Abs >>> Edinho Almeida >>> 11 8018-8019 >>> >>> >>> 2010/10/21 Eric Saboia <[email protected]> >>> >>> Nossa, vamos lá: >>>> >>>> 1 - Requisição ao banco ou ao servidor, só depende da ótica, o client >>>> requisita o servidor, se esse precisa ir ao banco buscar a informação, >>>> tanto >>>> faz.. >>>> 2 - Requisição ajax vai aumentar a segurança? >>>> 3 - Máquina travar por 1 minuto? oO >>>> 4 - Correto, o banco só precisa ter a hora de término, agora HIDDEN com >>>> essa hora? você NUNCA pode confiar na informação que vem do cliente, isso é >>>> regra número 1 de segurança. e é por esse motivo que o cronômetro ser por >>>> ajax ou javascript independe na segurança, pois você não deve confiar nessa >>>> informação pra aceitar ou não o lance. Como eu já disse anteriormente, a >>>> verificação do tempo tem que ser feita NO servidor, por mais que o >>>> cronometro ainda mostre tempo maior que zero, se a verificação no servidor >>>> mostrar que o tempo encerrou, a requisição não pode ser aceita. >>>> >>>> 2010/10/21 Edinho Almeida <[email protected]> >>>> >>>> Amigos. >>>>> Pelo que entendi não é requisição ao banco e sim ao servidor para >>>>> buscar a hora do servidor, ou não? >>>>> Realmente será um request ajax por segundo, porém a segurança de que o >>>>> horário está sendo obedecido é maior. >>>>> Se a máquina do cliente travar por um minuto quando houver a nova >>>>> requisição a data voltará correta. >>>>> >>>>> No banco fica somente a hora do fim. que é lida só quando a página >>>>> carrega. >>>>> O Ajax busca o horário do servidor e o javascript faz a conta com o >>>>> horário do fim que está num campo hidden. >>>>> Daria para equilibrar segurança com redução de requests fazendo o >>>>> javascript fazer a regressiva, mas de 15 em 15 segundos, por exemplo fazer >>>>> uma requisição para aferir o horário. >>>>> >>>>> Abs >>>>> Edinho Almeida >>>>> 11 8018-8019 >>>>> >>>>> >>>>> 2010/10/21 Leonardo Grillo <[email protected]> >>>>> >>>>>> 1 requisição ao banco por segundo só para isso? acho meio que >>>>>> desnecessário... >>>>>> Se você paga um servidor de hospedagem por trafego, imagine se 1.000 >>>>>> pessoas acessam o seu site por dia, ficam vendo este cronometro por >>>>>> 10min e >>>>>> que esta tarefa gere um fráfego de 1kb por requisição. é só multiplicar: >>>>>> 585.9375mb por dia! >>>>>> >>>>>> Em 21 de outubro de 2010 11:00, Eric Saboia <[email protected]>escreveu: >>>>>> >>>>>> Acho essa abordagem horrível. De qualquer forma você não irá garantir >>>>>>> a precisão do cronômetro pelo delay que a requisição via ajax leva, >>>>>>> além de >>>>>>> gerar uma porrada de requisições que podem afetar o desempenho do >>>>>>> serviço. >>>>>>> >>>>>>> 2010/10/21 Tiago Davi <[email protected]> >>>>>>> >>>>>>> Nossa.. rs de 1s em 1s o servidor fica fazendo requisições e com >>>>>>>> acessos concorrentes? >>>>>>>> >>>>>>>> Acho que estou tentando ir pelo caminho mais difícil e não estou >>>>>>>> exergando o mais simples. >>>>>>>> >>>>>>>> Gostei da solução mas isso não prejudica a performance em um >>>>>>>> servidor compartilhado? >>>>>>>> >>>>>>>> Parabéns pelos sites, muito bom mesmo. >>>>>>>> >>>>>>>> Em 21 de outubro de 2010 11:50, Allan Torres ( Hazi) < >>>>>>>> [email protected]> escreveu: >>>>>>>> >>>>>>>> Gente, >>>>>>>>> Construi alguns desses , www.japegou.com.br , >>>>>>>>> www.liquidatagua.com.br e to vendendo a solução também para alguns >>>>>>>>> estados, graças a deus ta começando bem legal, mas esse contador >>>>>>>>> funciona >>>>>>>>> com um ajax bem simples, pois você cadastra o horario de inicio, e >>>>>>>>> horario >>>>>>>>> final, juntamente com a data, dai é fazer uma requisição ajax que de >>>>>>>>> 1 em 1 >>>>>>>>> segundo busque a informação e traga ao site, o complicado as vezes é a >>>>>>>>> questão de fuso horario dos servidores mas facilmente resolvido com >>>>>>>>> uma soma >>>>>>>>> de mais ou menos horas... >>>>>>>>> >>>>>>>>> >>>>>>>>> Abraços, precisando de alguma coisa relacionada a esse tipo de >>>>>>>>> sistemas, to por aqui, >>>>>>>>> Mandem PVT. >>>>>>>>> >>>>>>>>> allan Torres >>>>>>>>> >>>>>>>>> >>>>>>>>> 2010/10/21 Roberto Almeida Quilice Longhi < >>>>>>>>> [email protected]> >>>>>>>>> >>>>>>>>> Tiago, >>>>>>>>>> >>>>>>>>>> Concordo que parte tem que ser feita em javascript e parte no >>>>>>>>>> servidor. >>>>>>>>>> Eu faria dessa forma para não ficar fazendo requisição no servidor >>>>>>>>>> se é algo que o cliente pode resolver. >>>>>>>>>> >>>>>>>>>> Porém não entendi o paragrafo abaixo: >>>>>>>>>> >>>>>>>>>> "Pois em windows você pode programar a execução de um método >>>>>>>>>> automaticamente mas agora em linux.. ai é que são elas." >>>>>>>>>> O que tu quis dizer com isso ? >>>>>>>>>> >>>>>>>>>> Em 21/10/2010 11:22, Tiago Davi escreveu: >>>>>>>>>> >>>>>>>>>> Interessante, fiquei analisando esses sites de compras coletivas e >>>>>>>>>> tenho quase certeza que eles funcionam com Asp.net.. >>>>>>>>>> Pois em windows você pode programar a execução de um método >>>>>>>>>> automaticamente mas agora em linux.. ai é que são elas. >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> Em 21 de outubro de 2010 11:18, Lucas <[email protected]>escreveu: >>>>>>>>>> >>>>>>>>>>> Na parte da visualização (Front End) é JavaScript... Agora, você >>>>>>>>>>> pode fazer um esquema de ajax, para sincronizar o relógio de tempo >>>>>>>>>>> em tempo, >>>>>>>>>>> tendo consulta no banco ou não.. e quando "zerar" o cronometro, >>>>>>>>>>> você também >>>>>>>>>>> faz uma requisição ajax para certificar que o tempo foi "acabado"... >>>>>>>>>>> Eu faria assim. >>>>>>>>>>> >>>>>>>>>>> Em 21 de outubro de 2010 11:15, Tiago Davi <tiago.asp.net@ >>>>>>>>>>> gmail.com> escreveu: >>>>>>>>>>> >>>>>>>>>>>> Bom dia galera. >>>>>>>>>>>> >>>>>>>>>>>> Gostaria de saber se é possível em PHP fazer um cronômetro no >>>>>>>>>>>> estilo Peixe Urbano de forma que fique contando o tempo >>>>>>>>>>>> automáticamente no >>>>>>>>>>>> servidor mesmo >>>>>>>>>>>> sem a execução do script. >>>>>>>>>>>> >>>>>>>>>>>> Por exemplo: >>>>>>>>>>>> >>>>>>>>>>>> Um usuário entrou e viu uma oferta que tem 01:20:00, o mesmo >>>>>>>>>>>> saiu da página e ficou 1h fora e quando voltou o tempo estava em >>>>>>>>>>>> 00:20:00. >>>>>>>>>>>> >>>>>>>>>>>> Alguém tem idéia de como fazer isso de forma eficiente em um >>>>>>>>>>>> servidor linux? >>>>>>>>>>>> >>>>>>>>>>>> Att. >>>>>>>>>>>> >>>>>>>>>>>> -- >>>>>>>>>>>> Tiago Davi - Desenvolvedor Web. >>>>>>>>>>>> http://tiagoaspnet.blogspot.com >>>>>>>>>>>> >>>>>>>>>>>> Política e outros temas: >>>>>>>>>>>> http://socorrobr.blogspot.com/ >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> _______________________________________________ >>>>>>>>>>>> [email protected] >>>>>>>>>>>> http://www.codeigniter.com.br >>>>>>>>>>>> >>>>>>>>>>>> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br >>>>>>>>>>>> >>>>>>>>>>>> --------------------------- >>>>>>>>>>>> Oportunidade de negócio >>>>>>>>>>>> http://www.franquiasargohost.net >>>>>>>>>>>> --------------------------- >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> -- >>>>>>>>>>> Att. >>>>>>>>>>> Lucas H. J. Sigaki >>>>>>>>>>> >>>>>>>>>>> _______________________________________________ >>>>>>>>>>> [email protected] >>>>>>>>>>> http://www.codeigniter.com.br >>>>>>>>>>> >>>>>>>>>>> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br >>>>>>>>>>> >>>>>>>>>>> --------------------------- >>>>>>>>>>> Oportunidade de negócio >>>>>>>>>>> http://www.franquiasargohost.net >>>>>>>>>>> --------------------------- >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> Tiago Davi - Desenvolvedor Web. >>>>>>>>>> http://tiagoaspnet.blogspot.com >>>>>>>>>> >>>>>>>>>> Política e outros temas: >>>>>>>>>> http://socorrobr.blogspot.com/ >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> _______________________________________________li...@codeigniter.com.brhttp://www.codeigniter.com.brhttp://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br >>>>>>>>>> >>>>>>>>>> --------------------------- >>>>>>>>>> Oportunidade de negóciohttp://www.franquiasargohost.net >>>>>>>>>> --------------------------- >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> Roberto Almeida Quilice Longhi >>>>>>>>>> Folha de Pagamento - Web >>>>>>>>>> Ramal: 1406 >>>>>>>>>> Tel: (11) 8599-9022 >>>>>>>>>> Programação Contmatic >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> _______________________________________________ >>>>>>>>>> [email protected] >>>>>>>>>> http://www.codeigniter.com.br >>>>>>>>>> >>>>>>>>>> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br >>>>>>>>>> >>>>>>>>>> --------------------------- >>>>>>>>>> Oportunidade de negócio >>>>>>>>>> http://www.franquiasargohost.net >>>>>>>>>> --------------------------- >>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> -- >>>>>>>>> Allan Torres >>>>>>>>> >>>>>>>>> >>>>>>>>> _______________________________________________ >>>>>>>>> [email protected] >>>>>>>>> http://www.codeigniter.com.br >>>>>>>>> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br >>>>>>>>> >>>>>>>>> --------------------------- >>>>>>>>> Oportunidade de negócio >>>>>>>>> http://www.franquiasargohost.net >>>>>>>>> --------------------------- >>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> Tiago Davi - Desenvolvedor Web. >>>>>>>> http://tiagoaspnet.blogspot.com >>>>>>>> >>>>>>>> Política e outros temas: >>>>>>>> http://socorrobr.blogspot.com/ >>>>>>>> >>>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> [email protected] >>>>>>>> http://www.codeigniter.com.br >>>>>>>> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br >>>>>>>> >>>>>>>> --------------------------- >>>>>>>> Oportunidade de negócio >>>>>>>> http://www.franquiasargohost.net >>>>>>>> --------------------------- >>>>>>>> >>>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> Eric Saboia - eric.saboia.org >>>>>>> PHP Zend Certified Engineer >>>>>>> >>>>>>> >>>>>>> _______________________________________________ >>>>>>> [email protected] >>>>>>> http://www.codeigniter.com.br >>>>>>> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br >>>>>>> >>>>>>> --------------------------- >>>>>>> Oportunidade de negócio >>>>>>> http://www.franquiasargohost.net >>>>>>> --------------------------- >>>>>>> >>>>>>> >>>>>> >>>>>> _______________________________________________ >>>>>> [email protected] >>>>>> http://www.codeigniter.com.br >>>>>> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br >>>>>> >>>>>> --------------------------- >>>>>> Oportunidade de negócio >>>>>> http://www.franquiasargohost.net >>>>>> --------------------------- >>>>>> >>>>>> >>>>> >>>>> _______________________________________________ >>>>> [email protected] >>>>> http://www.codeigniter.com.br >>>>> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br >>>>> >>>>> --------------------------- >>>>> Oportunidade de negócio >>>>> http://www.franquiasargohost.net >>>>> --------------------------- >>>>> >>>>> >>>> >>>> >>>> -- >>>> Eric Saboia - eric.saboia.org >>>> PHP Zend Certified Engineer >>>> >>>> >>>> _______________________________________________ >>>> [email protected] >>>> http://www.codeigniter.com.br >>>> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br >>>> >>>> --------------------------- >>>> Oportunidade de negócio >>>> http://www.franquiasargohost.net >>>> --------------------------- >>>> >>>> >>> >>> _______________________________________________ >>> [email protected] >>> http://www.codeigniter.com.br >>> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br >>> >>> --------------------------- >>> Oportunidade de negócio >>> http://www.franquiasargohost.net >>> --------------------------- >>> >>> >> >> >> -- >> Eric Saboia - eric.saboia.org >> PHP Zend Certified Engineer >> >> >> _______________________________________________ >> [email protected] >> http://www.codeigniter.com.br >> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br >> >> --------------------------- >> Oportunidade de negócio >> http://www.franquiasargohost.net >> --------------------------- >> >> > > _______________________________________________ > [email protected] > http://www.codeigniter.com.br > http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br > > --------------------------- > Oportunidade de negócio > http://www.franquiasargohost.net > --------------------------- > > -- Eric Saboia - eric.saboia.org PHP Zend Certified Engineer
_______________________________________________ [email protected] http://www.codeigniter.com.br http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br --------------------------- Oportunidade de negócio http://www.franquiasargohost.net ---------------------------

