Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/12/2009, 07:00
nachin86
 
Fecha de Ingreso: septiembre-2006
Mensajes: 19
Antigüedad: 13 años, 3 meses
Puntos: 0
Ayuda con desautentificación de usuarios

Hola! Tengo un problema a la hora de hacer un botón de salir en mi aplicación. La situación es la siguiente. Tengo una variable $_SESSION['usuario'] que puede coger 3 valores distintos: anonimo, profesor o alumno. Cuando la variable valga anonimo quiero que el index.php me muestre el formulario de validación y si no que me muestre opciones propias de cada interfaz.

Hasta ahí bien, el problema llega a la hora de implementar una opción de salir que me cambie el valor de la $_SESSION y ponerlo en anonimo y así volver a mostrar otra vez la pantalla de validación. Pues no soy capaz. Pongo un fragmento de código con lo que tengo.

A ver si me podeis echar una mano :).

Código PHP:
<?php
                
if($_SESSION['usuario']->getTipo()=='anonimo'){
                    echo 
"<div id=\"div_validacion\">";
                        echo 
"<img src=\"imagenes/cabeceras/validacion.png\" alt=\"Seccion validacion usuarios\" width=\"100%\" height=\"40%\">";
                        echo 
"<p>*</p>";
                        echo 
"<form method=\"post\" action=\"validarDatos.php\">";
                            echo 
"<table summary=\"Validación de identidad de Usuarios\" title=\"Validación de Identidad de Usuarios\">";
                                echo 
"<tr>";
                                    echo 
"<td><label for=\"usuario\">Usuario:</label></td><td ><input class=\"tablavalidacion\" type=\"text\" id=\"nombre\" name=\"nombre\" value=\"usuario...\"></td>";
                                echo 
"</tr>";
                                echo 
"<tr>";
                                    echo 
"<td><label for=\"pass\">Contraseña:</label></td><td><input class=\"tablavalidacion\" type=\"password\" id=\"pass\" name=\"pass\" value=\"aaaaa\"></td>";
                                echo 
"</tr>";
                                echo 
"<tr>";
                                    echo 
"<td colspan=\"2\"><input  type=\"submit\" value=\"Aceptar\"></td>";
                                echo 
"</tr>";
                            echo 
"</table>";
                        echo 
"</form>";
                    echo 
"</div>";
}
else if(
$_SESSION['usuario']->getTipo()=='profesor'){
//[...codigo...]
/*
                                        $_SESSION['usuario']=new Persona('0','0', 'Invitado', 'Invitado', "", 'anonimo');
                                        echo "<td  align=\"center\" onmouseover=\"cambiarFondo(this);\" onmouseout=\"reestablecerFondo(this);\" style=\"border-top:1px solid black;border-bottom:1px solid black;\"><a href=\"index.php?pag=bienvenida\">Salir</a></td>";
                                    }*/
                                
echo "</tr>";
                            echo 
"</table>";
                        echo 
"</div>";
                        }
?>
Lo que tengo comentado es donde quiero poner el botón de salir y que me cambie el valore de $_SESSION. De la manera que está puesto ahí cada vez que le doy a cualquier opción de ese menú me pasa a valer anónimo y me cierra la interfaz propia del usuario cuando no es lo que quiero. Hay alguna llamada a alguna función de javascript pero son pequeñas cosas de cambiar el fondo nada más. No tiene nada que ver. Que no os despiste.

Gracias.