Login de usuario PHP-MYSQL sencillo

Publicado por PcTec-21 viernes, 22 de octubre de 2010

Buenas hoy publicare un codigo para hacer un sencillo formulario para que el usuario se conecte a la aplicacion para esto usuaremos varios archivos.


el primero llamaremos "login.php" y contendra el formulario y una validacion sencilla para ver si el usuario escribio o no el nombre y la contraseña.

---------------------------------------------------------------------------------------------------------------

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<style type="text/css">
#contenido{
margin:auto;
}
#logo{
text-align:center;
}
#formulario{
text-align:center;
}
#contenido #formulario table{
margin:auto;
border: solid 1px #CCC;
text-align:center;
}
.solid-error{
background:#E80000;
color:#FFFFFF;
font-weight:bold;
padding:4px;
text-align:center;
width:50%;
}
</style>
<script type="text/javascript">
function valida()
{
var usuario = document.login.usuario.value;
var passwd = document.login.passwd.value;
if (usuario == "" || usuario.length == 0){
alert("Usuario es Requerido")
document.login.usuario.focus();
}
else if(passwd == "" || passwd.length == 0){
alert("Password es Requerida")
document.login.passwd.focus();
}
else{
document.login.submit();
}
}
</script>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Abogados y Personal | Login</title>
</head>

<body>
<div id="contenido">
  <div id="logo"><img src="images/logo.jpg" /></div>
  <div id="formulario" align="center">
  <form name="login" action="validar_usuario.php" method="post" onsubmit="valida(); return false">
    <table width="300" border="0" cellpadding="2" cellspacing="2" >
      <tr>
        <th align="right" valign="top" scope="row">Usuario</th>
        <td align="left"><input name="usuario" type="text" size="30" /></td>
      </tr>
      <tr>
        <th align="right" valign="top" scope="row">Contrase&ntilde;a</th>
        <td align="left"><input name="passwd" type="password" size="30" /></td>
      </tr>
      <tr>
        <th colspan="2" scope="row"><input type="submit" name="Ingresar" id="Ingresar" value="Enviar" /></th>
      </tr>
    </table>
    </form>
</div>
</div>
<br />
<?php 
if ($_REQUEST[mensaje]!="") 
echo "<div class='solid-error' style='margin:auto'><center>$_REQUEST[mensaje]</center></div>";
?>

</body>
</html>
-------------------------------------------------------------------------------------------------------------
luego tenemos el "validar_usuario.php" que es donde realizamos la comprobacion con la base de datos de lo enviado por el usuario

-------------------------------------------------------------------------------------------------------------
<?php
//// realizamos la conexion con el servidor mysql
$cn = mysql_connect("servidor","usuario","password") or die(mysql_error());

//// seleccionamos la base de datos
mysql_select_db("basededatos",$cn) or die(mysql_error());

function login_usuario($login, $passwd){
////realizamos la consulta a la base de datos
$pass = md5($passwd);
$sql = "select * from usuarios where usu_login='$login' and usu_clave='$pass'";
$rs = mysql_query($sql) or die(mysql_error());
if (mysql_num_rows($rs)>0)
{
while($row=mysql_fetch_array($rs))
{
///verifico si el usuario pertenece al departamento que deseo esta se podria quitar
if($row[iddepart]!=3)
{
$error = "No tienes acceso a este modulo";
header("location:login.php?mensaje=$error");
}
else
{
//// creo la session
session_start();
/// asigno valor 1 a la variable de session que llamo "validar"
$_SESSION[validar] = 1;
//// y lo reenvio al index de mi paginaa
header("location:index.php");
}
}
}
else
{
//// si da error lo reenvio a la pagina de login y muestro un mensaje
$error = "Su usuario no esta en la base de datos";
header("location:login.php?mensaje=$error");
}
}

switch($_REQUEST[opcion])
{
default:
login_usuario($_REQUEST[usuario], $_REQUEST[passwd]);
break;
}
?>
-------------------------------------------------------------------------------------------------------------

luego tendremos el "index.php" de la pagina donde daremos acceso al usuario si se logueo con exito
aqui solo muestro un mensaje de bienvenido a la pagina y un link para cerrar la session del usuario y antes de la etiqueta html coloco un include para validar que el usuario tenga o no permiso

<?php
include('validar_session.php');
?>
<html>
<head>
</head>
<body>
Bienvenido
<a href="cerrar_session.php">Salir del sistema</a>
</body>
</html>

-------------------------------------------------------------------------------------------------------------el archivo para validar que el usuario tenga permiso lo llamare "validar_session.php" y contendria lo siguiente

<?php
session_start();
if ($_SESSION[validar]!=1){
$error = "Debe Iniciar Session";
header("location:login.php?mensaje=$error");
}
?>
-------------------------------------------------------------------------------------------------------------

y por el ultimo el archivo para cerrar la session al cual llamare "cerrar_session.php" y es el que se ejecutara cuando el usuario haga click en el link salir de la aplicación

<?php
session_start();
session_destroy();
$msj = "Ha Finalizado su session";
header("location: login.php?mensaje=$msj");
?>
-------------------------------------------------------------------------------------------------------------

espero que sea de utilidad este ejemplo sencillo y cualquier pregunta o comentario puede escribir....

saludos


2 comentarios

  1. Unknown Says:
  2. tengo dudas me ayudas'?

     
  3. Unknown Says:
  4. Respondeme a este :) ahi vi que tiene el boton para que me avise si me respondes..

     

Publicar un comentario

Related Posts Plugin for WordPress, Blogger...
Con la tecnología de Blogger.

wibiya widget