O tempo de sessão do php expirou

Prezado boa tarde!

Após determinado tempo sem atividade recebo esta mensagem

“Não foi possivel conectar com o banco de dados: O tempo de sessão do php expirou ou os parâmetros de conexão estão incorretos.”

tem como alterar esta mensagem e redirecionar a tela de login ?

Grato.

É um tópico antigo, mas hoje me deparei com este problema… vi em outros posts alguns companheiros aumentando o tempo de sessão via programação, mas o que gostaria seria caso o tempo de sessão expirasse que todas as aplicações redirecionassem para a app de login. Alguém tem alguma ideia a respeito ?

Alexandre

Boa noite,

Eu fiz o seguinte, quando o usuário se loga gravo em uma variavel global a hora e acrescento 5 minutos, quando inicio cada aplicação verifico se o tempo atual e maior que a variável ai direciono para o login novamente, ajudou?

Ilton

Hummmm… ajuda se o tempo que você definir na sua variável for menor que o tempo da sessão… É uma solução de contorno para o problema existente e acredito que vá funcionar sim :wink:

Valeu pela dica! :wink:

Boa tarde em qual variável???

Altere no php.ini
session.gc_maxlifetime
Aqui você coloca o tempo de vida de sessão

Ricardo.

No minha aplicação Login (Controle)
No Evento OnValidate
/** inicia a sessão com 15minutos */
[global_hora_logado] = mktime()+900;

Ai Em qualquer aplicação no Evento onScriptInit
/* verifica se o tempo logado é maior que 15minutos, se for ele redireciona para login novamente, senão soma mais 15minutos */
if(mktime() > [global_hora_logado])
{
sc_redir(Login.php, “”, “_parent”);
}
else
{
[global_hora_logado] = mktime()+900;
}

Espero ter ajudado.

Ilton