... sesión solo hay una. Esta destruyendo todas las variables porque así lo estás indicando (lee los comentarios del còdigo que manejas, claramente dice "destruye TODAS las variables de sesion"). Lo que mencioné que podías hacer es manejar dos variables independientes... ve que $_SESSION no es más que una matriz y como toda matríz también puede ser multidimencional.
Haber si queda más claro... te planteo manejar algo como:
Código PHP:
/*--- los datos de tu "primer sesión" ---*/
$_SESSION['sesion1']['var1']="Var1.1";
$_SESSION['sesion1']['var2']="Var1.2";
$_SESSION['sesion1']['var3']="Var1.3";
/*--- y una segunda sesión ---*/
$_SESSION['sesion2']['var1']="Var2.1";
$_SESSION['sesion2']['var2']="Var2.2";
$_SESSION['sesion2']['var3']="Var2.3";
y cuando quieras destruir simplemente:
Código PHP:
unset($_SESSION['sesion2']);
/*--- ahora solo existen $_SESSION['sesion1'] e inferiores ---*/
No destruyes la sesión (es única) solo destruyes una variable de sesión. Es simple... es lo más simple que se me ocurre, solo es organizarse y pensarle bien.
Espero te sirva. Saludos!