Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS


Moderador: web

 
Mais de 1000 postagens
Mais de 1000 postagens
Tópico Autor
Mensagens: 1308
Sexo: Masculino

dúvida limpa cookie sessão

22-07-2010 15:44

Há o arquivo limpacookie.php no link abaixo com o seguinte conteúdo:

<?php setcookie("Cookie_countdown"); ?>

Estou utilizando o mesmo no logout, e está funcionando quando se sai da sessão pelo logout. Entretanto, quando o usuário fecha o navegador sem sair da sessão, essa função não é acionada, e, ao se entrar na área restrita, há a contagem regressiva pelo remanescente da sessão anterior. Coloquei essa função setcookie("Cookie_countdown"); no arquivo de entrada na área restrita, antes do redirecionamento para o arquivo index da sessão, mas a contagem não está zerando. Há alguma idéia de como posso proceder para zerar a contagem para a nova sessão?

Referência
http://www.codigosnaweb.com/forum/Conta ... _1373.html
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17721
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

dúvida limpa cookie sessão

22-07-2010 17:02

Se não precisa manter o tempo da contagem regressiva se a pessoa sair da página, então é melhor você já deixar o tempo fixo, e no final com a contagem redirecionar.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 1000 postagens
Mais de 1000 postagens
Tópico Autor
Mensagens: 1308
Sexo: Masculino

dúvida limpa cookie sessão

23-07-2010 08:11

Eu não entendi. Acho que está como você disse. Deixei as linhas abaixo com o mesmo valor. Ao final da contagem, há o redirecionamento para limpacookie.php, e, deste, para a página de logout:
$tempo_permitido = 360; // tempo em segundos até redirecionar $tempo_cookie = '360'; // em segundos

0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17721
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

dúvida limpa cookie sessão

23-07-2010 09:12

Você disse que quer limpar a session no início da página, ou seja, quer resetar o contador, então é melhor que a cada acesso o tempo fique fixo, e a contagem regressiva não seja salva em SESSION. Explica melhor seu objetivo.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 1000 postagens
Mais de 1000 postagens
Tópico Autor
Mensagens: 1308
Sexo: Masculino

dúvida limpa cookie sessão

23-07-2010 10:01

Meu objetivo é que a cada acesso o usuário tenha disponível o tempo integral da sessão. Vamos supor que a sessão dure 3 minutos, e faltando 30 segundos para sua expiração, o usuário feche o navegador. Como está, mantida a contagem remanescente na nova sessão (se é que ela é nova), ao fazer o logon, a nova sessão duraria 30 segundos, e terminaria, havendo o redirecionamento para a página de logout, e o usuário teria de fazer novo logon. Eu gostaria de evitar isso. Eu não sei que parte do código salva a contagem na sessão.

A propósito, achei artigo com este título Fechamento de sessão ao fechar o navegador em PHP no link http://www.criarweb.com/artigos/fechame ... m-php.html mas não tentei implementá-lo. Parece-me que se o php.ini não estiver com as linhas abaixo habilitadas com com tais valores, e se não se tiver acesso a alterá-las, o código não funcionaria:
session.use_trans_sid = 0 session.use_only_cookies = 1

No php.ini do Xampp, por exemplo, a linha session.use_only_cookies = 1 está desabilitada. Eu posso habilitá-la localmente, mas, e se não conseguir fazê-lo remotamente? Aí, melou!
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17721
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

dúvida limpa cookie sessão

23-07-2010 12:35

O script da contagem regressiva trabalha em 2 partes: a do PHP e a do JavaScript

O PHP gera o esquema de salvar o tempo antes do último acesso, ou seja, se ele sair aos 20 segundos, quando voltar o tempo estará salvo.

No JavaScript o importante é essa linha

var contador = '<?php if($fim=="") { echo $tempo_permitido+1; } else { echo "$fim"; } ?>';

Note o seguinte:
Pelo PHP, $fim é igual $tempo_permitido - $tempo_gerado, que é o valor gravado no cookie pelo tempo decorrido.

Então, se você quer ter o valor integral para cada session, basta você colocar ele ai na variável contador, no JS.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 1000 postagens
Mais de 1000 postagens
Tópico Autor
Mensagens: 1308
Sexo: Masculino

dúvida limpa cookie sessão

23-07-2010 16:17

Mas me parece que é essa linha que imprime a contagem regressiva. Se eu mexer nela, pode ser que a contagem não seja impressa. O valor integral que você diz é isso: $tempo_permitido = 360;? E qual a diferença entre $tempo_permitido = 360; e $tempo_cookie = '360';?
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17721
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

dúvida limpa cookie sessão

23-07-2010 17:29

var contador é o valor inicial em segundos da contagem regressiva.

$tempo_permitido é um valor em segundos, que irá sendo subtraído por um valor trabalhado na session

$tempo_cookie define o tempo que o cookie irá durar na máquina do usuário, no caso 3600 "segundos" é igual a 1 hora
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 1000 postagens
Mais de 1000 postagens
Tópico Autor
Mensagens: 1308
Sexo: Masculino

dúvida limpa cookie sessão

23-07-2010 21:15

Mas já aconteceu de eu colocar $tempo_permitido = '360' (para os testes, um tempo menor que uma hora); e $tempo_cookie = '3600' (uma hora) e, ao atualizar o navegador, ou fechar o navegador sem sair da sessão, e depois entrar na sessão novamente, não me recordo, e o valor da contagem assumir o valor da $tempo_cookie (3600). Daí resolvi deixar as variáveis $tempo_permitido e $tempo_cookie com valores iguais (360). Não sei se fiz certo.
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17721
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

dúvida limpa cookie sessão

23-07-2010 22:03

O script irá interpretar esses valores para fazer os cálculos e usar eles para definir o tempo restante, assim que o usuário voltar a página.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 1000 postagens
Mais de 1000 postagens
Tópico Autor
Mensagens: 1308
Sexo: Masculino

dúvida limpa cookie sessão

24-07-2010 20:41

Não tenho idéia de como colocar o valor integral para cada sessão na variável contador, do js do código, para zerar a contagem a cada logon. Pelo que entendi, esse código foi feito para continuar, na sessão seguinte, a contagem da sessão interrompida. É isso?
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17721
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

dúvida limpa cookie sessão

24-07-2010 21:03

var contador = '30';

Testa ai.
0
A melhor hospedagem para o seu site HostGator!

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado