Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa Tarde
Estive um longo tempo sem postar nada na área de PHP por que dei uma abandonada nessa área, mas meu sistema de loja surgiu um problema ao mudar de servidor
Antes eu estava na locaweb, onde as sessões automaticamente apagavam a cada 1 hora inativa, com a mudança para o servidor internacional elas duram apenas 15 minutos. O problema disso é que:
Se a pessoa esta logada e fica inativa por este período e logo tem que iniciar suas atividades, ela precisa refazer o login, o que no caso da parte de caixa é ruim, pois caso o cliente esteja com pressa é um tempo que se perde, afinal para o atendente passar algo no caixa ele precisa estar logado, senão da erro, pois pego o ID do atendente em cada pedido feito, logo tem que estar logado
A primeira solução foi aumentar manualmente o tempo da session:
//session_cache_limiter ('private');
//session_cache_expire(60); // 60 minutos
session_start();
Resultado: deu certo passei a ficar em todas as session os 60 minutos como eu queria, o que solucionou a questão do atendente ter que ficar fazendo login tao rapidamente.
Porem com isso todas as sessões foram alteradas em seu tempo, o que causou erro na hora do pedido. Não necessariamente um erro, mas um atraso na hora de mostrar a tela com todos os pedidos feitos
Antes era instantâneo, passava o pedido no caixa, finalizava e logo na tela que mostra o pedido ele aparecia.
Porem agora não, ele é passado no caixa é finalizado, é inserido na tabela de pedidos, mas na tela de pedidos ele demora para ser mostrado.
Isso por que eu também uso sessão para trabalhar com o pedido, então ela também passou a ter este atraso.
A solução que eu acho correta, pois não somente no pedido mas em varias partes as sessões são uteis, seria de aumentar somente o tempo da sessão de login, ou seja aquela que recebe os dados do usuário ao logar
Alguem sabe se isso é possível?
Valeu
Por configuração do PHP, não.
Para trabalhar apenas com session, você precisa salvar, em sessão, a data que o usuário logou e verificar nas páginas se a diferença desse horário com o atual é superior a 60 minutos.
Ou então trabalhar com cookies, que aceitam tempo de expiração para cada um.