Diferència entre revisions de la pàgina «Sol gestion instituto»

De wikiserver
Dreceres ràpides: navegació, cerca
Línia 1: Línia 1:
 +
index.php
 
<source lang="html">
 
<source lang="html">
 
<!DOCTYPE html>
 
<!DOCTYPE html>
Línia 22: Línia 23:
 
</source>
 
</source>
  
 +
 +
manejadorsesiones.php
  
 
<source lang="php">
 
<source lang="php">
Línia 57: Línia 60:
 
     session_start();
 
     session_start();
 
   
 
   
     $_SESSION['alumno']=$_POST["usuario"];
+
     $_SESSION['usuario']=$_POST["usuario"];
 
     $_SESSION['role']="role_alumno";
 
     $_SESSION['role']="role_alumno";
 
      
 
      
Línia 74: Línia 77:
 
{
 
{
 
     session_start();
 
     session_start();
     $_SESSION['profesor']=$_POST["usuario"];
+
     $_SESSION['usuario']=$_POST["usuario"];
 
     $_SESSION['role']="role_profesor";
 
     $_SESSION['role']="role_profesor";
 
     header("Location: espacio.php");
 
     header("Location: espacio.php");
Línia 85: Línia 88:
 
{
 
{
 
     session_start();
 
     session_start();
     $_SESSION['director']=$_POST["usuario"];
+
     $_SESSION['usuario']=$_POST["usuario"];
 
     $_SESSION['role']="role_directora";
 
     $_SESSION['role']="role_directora";
  
Línia 103: Línia 106:
 
</source>
 
</source>
  
 
+
espacio.php
 
<source lang="php">
 
<source lang="php">
  
Línia 111: Línia 114:
 
if($_SESSION['role']=="role_alumno"){
 
if($_SESSION['role']=="role_alumno"){
 
echo "eres un alumno";
 
echo "eres un alumno";
 
 
 
}elseif ($_SESSION['role']=="role_profesor") {
 
}elseif ($_SESSION['role']=="role_profesor") {
 
echo "Teacher grande";
 
echo "Teacher grande";
Línia 121: Línia 122:
 
?>
 
?>
  
 +
<a href="./cerrar.php">cerrar</a>
 +
</source>
 +
 +
cerrar.php
 +
<source lang="php">
 +
<?php
 +
session_start();
 +
 +
/* comprobamos que un usuario registrado es el que accede al archivo,
 +
sino no tendría sentido que pasara por este archivo */
 +
if (!isset($_SESSION['usuario']))
 +
{
 +
    header("location:./index.php");
 +
}
 +
 +
/* usamos la función session_unset() para liberar la variable
 +
de sesión que se encuentra registrada */
 +
session_unset($_SESSION['usuario']);
 +
session_unset($_SESSION['role']);
 +
 +
// Destruye la información de la sesión
 +
session_destroy();
 +
 +
//volvemos a la página principal
 +
header("location:./index.php"); ?>
 
</source>
 
</source>

Revisió del 19:44, 21 gen 2018

index.php

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
</head>
<body>
	<form  action="manejadorsesiones.php" method="post">
 
   <input name="usuario" type="text" placeholder="Usuario" />
 
   <input name="password"  type="password" placeholder="Contraseña" />
 
   <input type="submit" value="Acceder" class="enviar">
 
</form>

	
</body>
</html>


manejadorsesiones.php

<?php

session_start(); 

$conn = mysqli_connect("localhost", "root","","roles");
//Recibimos las dos variables
$usuario=$_POST["usuario"];
$password=$_POST["password"];
 
/* Realizamos una consulta por cada tabla para buscar en que tabla se encuentra 
el usuario que está intentando acceder */
$sql="SELECT * FROM administracion WHERE usuario = '$usuario' AND password = '$password'";

//echo $sql;
$resul = mysqli_query($conn, $sql);


/* Sabemos que en el caso que exista el usuario se encontrará en una de estas 
tres tablas, por lo tanto se guardará en alguno de nuestras tres variables 
que guardan nuestra consulta */
 
/* Ahora comprobamos que variable contiene al usuario*/

$result = mysqli_fetch_object($resul);
 //print_r($result);


if($result->role == "role_alumno") 
{
    /* Si entra en este if significa que el que intenta acceder es un alumno, 
    por lo tanto le creamos una sesión */
    session_start();
 
    $_SESSION['usuario']=$_POST["usuario"];
    $_SESSION['role']="role_alumno";
    
    /* Nos dirigimos al espacio de los alumnos usando header que nos 
    redireccionará a la página que le indiquemos */
    header("Location: ./espacio.php");
    //header("Location: alumnos/espacioalumno.php");
 
    /* terminamos la ejecución ya que si redireccionamos ya no nos interesa 
    seguir ejecutando código de este archivo */
    exit(); 
}
 
/* Ahora comprobamos si el que intenta acceder es un profesor */
else if($result->role == "role_profesor") 
{
    session_start();
    $_SESSION['usuario']=$_POST["usuario"];
    $_SESSION['role']="role_profesor";
    header("Location: espacio.php");
   // header("Location: entrenador/espacioentrenador.php");
    exit(); 
}
 
//comprobamos si es un director el que intenta abrir la sesión
else if($result->role == "role_directora") 
{
    session_start();
    $_SESSION['usuario']=$_POST["usuario"];
    $_SESSION['role']="role_directora";

    header("Location: espacio.php");
   // header("Location: administrador/espacioadministrador.php");
    exit();
} 
else 
{
   /* Si no el usuario no se encuentra en ninguna de las tres tablas 
   imprime el siguiente mensaje */
   $mensajeaccesoincorrecto = "El usuario y la contraseña son incorrectos, por favor vuelva a introducirlos.";
   echo $mensajeaccesoincorrecto; 
}

?>

espacio.php

<?php
session_start(); 

if($_SESSION['role']=="role_alumno"){
	echo "eres un alumno";
}elseif ($_SESSION['role']=="role_profesor") {
	echo "Teacher grande";
}elseif ($_SESSION['role']=="role_directora") {
	echo "Jefa suprema";
}

?>

<a href="./cerrar.php">cerrar</a>

cerrar.php

<?php 
session_start();
 
/* comprobamos que un usuario registrado es el que accede al archivo, 
sino no tendría sentido que pasara por este archivo */
if (!isset($_SESSION['usuario'])) 
{
    header("location:./index.php"); 
}
 
/* usamos la función session_unset() para liberar la variable 
de sesión que se encuentra registrada */
session_unset($_SESSION['usuario']);
session_unset($_SESSION['role']);
 
// Destruye la información de la sesión
session_destroy();
 
//volvemos a la página principal
header("location:./index.php"); ?>