Borrar una session asi?

Iniciado por Alex_bro, 5 Abril 2010, 20:56 PM

0 Miembros y 1 Visitante están viendo este tema.

Alex_bro

Buenas,
En mi aplicacion necesito poder expulsar usuarios de su session, ya que sino, o bien podian seguir operando en ella hasta toparse con alguna pagina que tuviera el script que comparara su session con las aceptadas en la DB... o bien tendria que poner ese script en cada uno de los archivos de la pagina, con todo lo que conlleva... (conexiones a la DB...)

Al fin encontre una funcion para borrar una session con un ID especifico, que provandolo conmigo funciona, y es la siguiente:
Código (php) [Seleccionar]

<?
function DeleteSessionID($sessionid) {
 $orgpath = getcwd();
 //chdir(PHP_BINDIR);
 chdir(session_save_path());
 $path = realpath(getcwd()).'/';
 if(file_exists($path.'sess_'.$sessionid)) {
   // Delete it here
   unlink($path.'sess_'.$sessionid);
 } else {
   // File not found
 }
 chdir($orgpath);
}
?>


El codigo esta tomado de un comentario del manual oficial de PHP.

Mi duda esta en si esto (borrar el archivo de session "manualmente") ocasiona algun problema de desorden al servidor porque PHP la mantenga aun como activa aunque no encuentre el archivo o algo... ya que supongo que no esta pensado para que se haga esa operacion asi.

Gracias

PD: Si conocen alguna otra forma de destruir una session que no es la del mismo cliente, por favor diganlo, ya que temo que el hosting crea que el poder operar asi sobre el directorio de sesiones es una falta de seguridad y lo anulen.

дٳŦ٭

Yo que sepa no.. de hecho hay veces que entro a tmp y las vuelo al pelo  :xD y nunca ha sucedido nada.


Con sangre andaluza :)


Alex_bro

Gracias jaja, yo creo q deberian de hacer una funcion en PHP para ese tipo de cosas, y asi no tendriamos que recurrir a esto jaja.

Espero no verme algun dia sin permisos para operar asi en esa carpeta...

Gracias de nuevo, un saludo.