Como se podría mejorar?
ej: en aspectos de seguridad , o haciendo que la sesion se cierre si pasa un tiempo inactivo(que nose como se hace) , etc. dejo el codigo:
Este es el form de login
Código PHP:
<?php
$error=$_GET['error'];
if ($error==1){
$estado= 'error al ingresar';
}
?>
<div id="cont" align="center" style="font-size:20px">
<form id="form1" name="form1" method="post" action="login.php">
<table width="256" border="1">
<tr>
<td width="93" bgcolor="#0099CC"><h6>Usuario:</h6></td>
<td width="192" bgcolor="#0099CC">
<label for="nombre"></label>
<input type="text" name="usuario" id="usuario" />
</td>
</tr>
<tr>
<td bgcolor="#6699CC"><h6>Clave:</h6></td>
<td bgcolor="#6699CC"><label for="pass"></label>
<input type="text" name="pass" id="pass" />
</td>
</tr>
<tr>
<td colspan="2" align="center" bgcolor="#CC0033"><?php echo $estado; ?></td>
</tr>
<tr>
<td colspan="2" align="center"><label for="mail"></label> <input type="submit" name="registrar" id="registrar" value="Entrar" /></td>
</tr>
</table>
</form>
</div>
este es el login.php
Código PHP:
include('conectar.php');
$usuario = $_POST['usuario'];
$pass = $_POST['pass'];
$query = "Select id, usuario From TABLA Where usuario = '$usuario' AND pass = '$pass'";
$result = mysqli_query($link, $query);
echo mysqli_error($link);
$row = mysqli_fetch_object($result);
$id= $row->id;
$usuario= $row->usuario;
$row_cnt = mysqli_num_rows($result);
// printf("El resultado tiene %d filas.\n", $row_cnt);
if($row_cnt == 1)
{
session_start();
$_SESSION['UserInfo'] = $row;
$_SESSION["usuario"] = $usuario ;
header('Location: abm.php');
}
else{
header('Location: ingreso.php?error=1');
}
?>
Código PHP:
function isLogged()
{
session_start();
if(!isset($_SESSION['UserInfo']))
header('Location: ingreso.php?noestalogueado');
}
y por ultimo en las paginas que se necesita estar logueado sito la función
isLogged()
y muestro el usuario que esta activo con $_SESSION['usuario']
Bueno eso , si alguien me puede aportar mejoras , le estaria muy agradecido
saludos