Jump to content


Photo

Apagar Apenas A Session Dita


  • Faça o login para participar
22 replies to this topic

#1 Marcão

Marcão

    Marcãaaaaaaaao

  • Usuários
  • 1754 posts
  • Sexo:Não informado
  • Interesses:Faixa preta de Muay-Thay<br>Faixa Roxa de Jiu-Jitsu<br>:D<br>Um dia eu chego lá

Posted 17/01/2006, 13:00

tem como aágar todas as sessions de apenas uma pagina?

ex:

eu tenho 8 sessions no site todo, mas naquela pagina, eu tenho 4, quero so apagar essas 4 ae
tem como?

Edição feita por: Marcão, 17/01/2006, 13:01.

Marcão -=- PHP é coisa de MESTRE e falo mais nada -=-
Minha Foto
"Não temas,segue adiante,não olhes para trás!!
Segura na mão de
Deus e vai.."

#2 paes

paes

    GustavoPaes.Net

  • Usuários
  • 1393 posts
  • Sexo:Masculino
  • Localidade:São Paulo - SP
  • Interesses:Rumo ao topo!

Posted 17/01/2006, 13:09

se entendi bem, tente:
<?php
session_start();

unset($_SESSION['nome_sessao']);
?>

Até mais
Site: GustavoPaes.net

^ Rumo ao Topo ^

#3 Marcão

Marcão

    Marcãaaaaaaaao

  • Usuários
  • 1754 posts
  • Sexo:Não informado
  • Interesses:Faixa preta de Muay-Thay<br>Faixa Roxa de Jiu-Jitsu<br>:D<br>Um dia eu chego lá

Posted 17/01/2006, 13:10

se entendi bem, tente:

<?php
session_start();

unset($_SESSION['nome_sessao']);
?>

Até mais

não era bem isso...
... eu não quero passar o nome da sessão, eu quero destroir todas as sessions daquela pagina "current"
Marcão -=- PHP é coisa de MESTRE e falo mais nada -=-
Minha Foto
"Não temas,segue adiante,não olhes para trás!!
Segura na mão de
Deus e vai.."

#4 paes

paes

    GustavoPaes.Net

  • Usuários
  • 1393 posts
  • Sexo:Masculino
  • Localidade:São Paulo - SP
  • Interesses:Rumo ao topo!

Posted 17/01/2006, 13:11

Vc quer destruir as sessões usadas na página "current". É isso?
Site: GustavoPaes.net

^ Rumo ao Topo ^

#5 Marcão

Marcão

    Marcãaaaaaaaao

  • Usuários
  • 1754 posts
  • Sexo:Não informado
  • Interesses:Faixa preta de Muay-Thay<br>Faixa Roxa de Jiu-Jitsu<br>:D<br>Um dia eu chego lá

Posted 17/01/2006, 13:15

exatamente
ex:

eu no site todo tenho 8 sessões, mas naquela pagina current, eu tenho 4 sessões, quero apagar apenas essas 4!
Marcão -=- PHP é coisa de MESTRE e falo mais nada -=-
Minha Foto
"Não temas,segue adiante,não olhes para trás!!
Segura na mão de
Deus e vai.."

#6 paes

paes

    GustavoPaes.Net

  • Usuários
  • 1393 posts
  • Sexo:Masculino
  • Localidade:São Paulo - SP
  • Interesses:Rumo ao topo!

Posted 17/01/2006, 13:19

não conheço nenhuma forma de saber onde as sessões foram criadas!
Acredito que vc tenha que dar o nome à elas.

Ou na hora de criar, colocar o nome nelas:
$_SESSION['NOME_PAGINA']['nome_sessao']

E na hora de remover:
unset($_SESSION['NOME_PAGINA']);

Do contrário não sei não.
Até
Site: GustavoPaes.net

^ Rumo ao Topo ^

#7 Marcão

Marcão

    Marcãaaaaaaaao

  • Usuários
  • 1754 posts
  • Sexo:Não informado
  • Interesses:Faixa preta de Muay-Thay<br>Faixa Roxa de Jiu-Jitsu<br>:D<br>Um dia eu chego lá

Posted 17/01/2006, 13:21

session_destroy() ;)

[]’s :D

isso não destroi TODAS as sessions?
Marcão -=- PHP é coisa de MESTRE e falo mais nada -=-
Minha Foto
"Não temas,segue adiante,não olhes para trás!!
Segura na mão de
Deus e vai.."

#8 paes

paes

    GustavoPaes.Net

  • Usuários
  • 1393 posts
  • Sexo:Masculino
  • Localidade:São Paulo - SP
  • Interesses:Rumo ao topo!

Posted 17/01/2006, 13:21

session_destroy() ;)

[]’s :D

isso não destroi TODAS as sessions?

sim
www.php.net/session_destroy

Até
Site: GustavoPaes.net

^ Rumo ao Topo ^

#9 Paulo Freitas

Paulo Freitas

    ××××××× LRU #456504 ××××××× ××××××× LRM #364686 ×××××××

  • Ex-Admins
  • 5612 posts
  • Sexo:Masculino
  • Localidade:Campinas - SP

Posted 17/01/2006, 13:22

Ops, deletei meu post sem querer. :P

Sim, mas leia bem:

session_destroy() destroys all of the data associated with the current session. It does not unset any of the global variables associated with the session, or unset the session cookie.

Outro método:
$_SESSION = array();
[]’s :DAté mais

#10 paes

paes

    GustavoPaes.Net

  • Usuários
  • 1393 posts
  • Sexo:Masculino
  • Localidade:São Paulo - SP
  • Interesses:Rumo ao topo!

Posted 17/01/2006, 13:24

Ops, deletei meu post sem querer. :P

Sim, mas leia bem:

session_destroy() destroys all of the data associated with the current session. It does not unset any of the global variables associated with the session, or unset the session cookie.

[]’s :D

Mas deleta das outras páginas tbm, não?
Site: GustavoPaes.net

^ Rumo ao Topo ^

#11 Marcão

Marcão

    Marcãaaaaaaaao

  • Usuários
  • 1754 posts
  • Sexo:Não informado
  • Interesses:Faixa preta de Muay-Thay<br>Faixa Roxa de Jiu-Jitsu<br>:D<br>Um dia eu chego lá

Posted 17/01/2006, 13:36

ta apagando todas
Marcão -=- PHP é coisa de MESTRE e falo mais nada -=-
Minha Foto
"Não temas,segue adiante,não olhes para trás!!
Segura na mão de
Deus e vai.."

#12 Paulo Freitas

Paulo Freitas

    ××××××× LRU #456504 ××××××× ××××××× LRM #364686 ×××××××

  • Ex-Admins
  • 5612 posts
  • Sexo:Masculino
  • Localidade:Campinas - SP

Posted 17/01/2006, 14:05

Ops, perdão. :huh:

A única forma de contornar a situação é fazer como o paes indicou. Veja:

pagina1.php
<?php

// Inicializando sessão
session_start();

// Criando as sessões da página corrente
$_SESSION[$_SERVER['REQUEST_URI']]['x'] = 10;
$_SESSION[$_SERVER['REQUEST_URI']]['y'] = 20;

// Imprimir sessões
print_r($_SESSION);

?>
pagina2.php
<?php

// Inicializando sessão
session_start();

// Criando as sessões da página corrente
$_SESSION[$_SERVER['REQUEST_URI']]['x'] = 10;
$_SESSION[$_SERVER['REQUEST_URI']]['y'] = 20;

// Imprimir sessões
print_r($_SESSION);

?>
Em qualquer uma delas, para destruir todas seções por elas geradas, é só utilizar isto:
unset($_SESSION[$_SERVER['REQUEST_URI']]);
[]’s :DAté mais

#13 paes

paes

    GustavoPaes.Net

  • Usuários
  • 1393 posts
  • Sexo:Masculino
  • Localidade:São Paulo - SP
  • Interesses:Rumo ao topo!

Posted 17/01/2006, 14:07

Só por curiosidade!
Por que vc precisa remover apenas as sessões da página onde ela foi criada?

até
Site: GustavoPaes.net

^ Rumo ao Topo ^

#14 Marcão

Marcão

    Marcãaaaaaaaao

  • Usuários
  • 1754 posts
  • Sexo:Não informado
  • Interesses:Faixa preta de Muay-Thay<br>Faixa Roxa de Jiu-Jitsu<br>:D<br>Um dia eu chego lá

Posted 17/01/2006, 14:16

pq eu criei um array de sessões, ae quando o cara efetiva o pedido, eu destruia essas sessões, porem eu faço uma validação de login!, se o cara não estiver logado, ele não entra em nenhuma pagina!

fiz a validação usando session!

if($_SESSION['adm']=="nome"){
pode ver
}
else{
volte para index.php
}

porem, eu apagando as sessões, ele entra no else
Marcão -=- PHP é coisa de MESTRE e falo mais nada -=-
Minha Foto
"Não temas,segue adiante,não olhes para trás!!
Segura na mão de
Deus e vai.."

#15 nandotrade

nandotrade

    12 Horas

  • Usuários
  • 124 posts
  • Sexo:Não informado

Posted 17/01/2006, 14:24

Creio que sem atribuir uma identificação para a sua sessão não há como vc apagar aquela sessão específica.
Eu faço as operações de criação e eliminação das sessões sempre nomeando-as, pois desconheço outra forma de fazê-lo.

Ainda consultando o manual, ao criar a sessão, vc pode obter o ID dela e ai apenas utilizá-lo para a operação de encerramento e eliminação.


Veja no manual algumas coisas: http://br.php.net/ma...unction.session

Primeiro:

SID (string)
Constantes contendo o nome da sessão e o ID da sessão na forma de "name=ID" ou uma string vazia no caso de o ID não tenha sido apropriadamente salvo em um cookie de seção.

Se id está especificado, irá trocar a id da sessão atual. session_id() necessita ser chamada antes de session_start() para esse propósito. Dependendo do session handler, nem todos os caracteres serão permitidos dentro da id de sessão. Por exemplo, o arquivo session handler permite apenas caracteres do intervalo a-z, A-Z e 0-9!

session_name() retorna o nome da sessão atual. Se name está especificado, o nome da sessão atual é mudado para esse valor.

session_destroy() destrói tudo dos dados associados com a sessão corrente. Ela não elimina nenhuma das variáveis globais associadas com a sessão, e nem o cookie de sessão.

A função session_unset() libera todas as variáveis da sessão atualmente registradas.




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq