Esta vez veremos como proteger nuestras paginas con contraseñas con un practico sistema de administracion que permite a nuestra pagina ser mas dinamica, esto puede servirnos para hacer un admin en nuestra pagina.
Pero en primer punto si tenes la tipica pregunta de ¿para que nos puede servir algo asi?, es muy facil contestarla, simplemente nos ayuda a a tener mas control en nuestra pagina y administrar todo el sistema que nosotros creemos en un futuro o simplemete tener un sistema de usuarios como el de McTekK, claro esta que el sistema que les estoy presentando no es como el de McTekK pero es algo parecido ....
» 1 >> Base de Datos ::
Lo primero que deben hacer es crear la tabla con la que vamos a trabajar en este tutoriral:
Codigo:
1 2 3 4 5 6 7 8
|
<?php
CREATE TABLE `admin` (
`admin_id` mediumint(8) NOT NULL auto_increment,
`admin_user` varchar(25) NOT NULL default '',
`admin_password` varchar(25) NOT NULL default '',
PRIMARY KEY (`admin_id`)
) TYPE=MyISAM ;
?>
|
Lo que vaz a hacer aqui es sustituir en donde dice user por tu nick de inicio de secion y donde dice password por el password que escojas
Codigo:
1 2 3
|
<?php
INSERT INTO `admin` VALUES ('', 'user', 'password');
?>
|
» 2 >> Archivos a crear ::
1) db.php
Bueno :: este archivo es el que hara la coneccion a la base de datos que se va a incluir en todos los archivos con los que estaremos trabajando. ahora vamos a insertar en el archivo db.php este codigo ::
Codigo:
1 2 3 4 5 6 7 8
|
<?php
$db_host = 'localhost'; // host of the database
$db_user = 'user'; // user of the database
$db_pass = 'pass'; // password of the database
$db_name = 'base_de_datos'; // name of the database
$conectar = mysql_connect($db_host,$db_user,$db_pass);
mysql_select_db($db_name,$conectar);
?>
|
2) admin.php
Bueno :: Suponiendo que ya estan creadas las tablas en la base de datos, lo que vamos a hacer es copiar este codigo en el admin.php que luego he de explicar ....
Codigo:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
|
<?php
include("db.php");
if($_COOKIE["mctekk"])
{
Aqui el contenido si el usuario y
contraseña es correcto ....
<a href=logout.php>Log Out</a>
<? }
else {
<form name="admin" method="post" action="login.php">
<table width=300 border=0 align=center bgcolor=#FFFFFF>
<tr>
<td bgcolor=#CCCCCC><div align=cente>
<strong>Admin</strong></font></div></td>
</tr>
</table>
<table width=300 border=0 align=center bgcolor=#FFFFFF>
<tr>
<td width=97% bgcolo=#E4E4E4><div align=right>
Nombre de Usuario::</div></td>
<td width=97% bgcolor=#E4E4E4>
<input name=nick type=text id=nick></td>
</tr>
<tr>
<td bgcolor=#E4E4E4><div align=right>
Contraseña</div></td>
<td bgcolor=#E4E4E4>
<input name=password type=password id=password>
</td>
<tr>
</table>
<div align=center>
<input name=entrar type=submit id=entrar value=Entar>
</div>
</form>
<? }
mysql_close($conectar);
?>
|
Listo :: En este momento lo que voy a hacer es explicar todo esto ::
1 >>
if($_COOKIE["mctekk"]){ :: Esto que tenemos aqui es el verieficador de la cookie :: Lo que hace es verificar si la cookie existe o no, si existe nos mandara a la parte del panel de control que tu luego haz de editar pero de lo contrario si la cookie no existe nos mandara al formulario del Login..
2 >>
} mysql_close($conectar) :: Esto es el cierre de coneccion de la vase de datos para evitar que haga mas procesos de los que debe ...
3) login.php
Ahora creamos el login.php insertando en nuestro archivo este codigo.
De aqui en adelante no toques nada a menos que quieras saber como funciona ...
Codigo:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
|
<?php
if($entrar)
{
include("db.php");
function st($texto)
{
$texto = trim($texto);
$texto = htmlspecialchars($texto);
return $texto;
}
$nick = st($nick) ;
$password = st($password) ;
$user = mysql_query("select * from admin where user='$nick'");
$usr = mysql_fetch_array($user);
if(mysql_num_rows($user) != 0)
{
if($password == $usr[admin_password])
{
setcookie("mctekk",$nick,time()+7776000);
header("location: admin.php");
}
else
{
header("location: admin.php");
}
}
else
{
header("location: admin.php");
}
}
?>
|
3) loguot.php
Y por fin el ultimo archivo que es el loguot.php, este archivo es el nos va a cerrar la cesion del sistema ....
Codigo:
1 2 3 4
|
<?php
setcookie("mctekk");
header("location: admin.php") ;
?>
|
Bueno :: si lo hiciste bien :: debe de funcionar :: para cualquier aclaracion o alguna duda agregame en el MSN :: mi correo es miguell_017@hotmail.com
Nota ::
Tu puedes editar todos los datos del script como la cookie ademas de que le puedes agregar mas seguridad como MD5 y otras cosas que tu quieras :: Puedes proteger todas las paginas que quieras solo poniendo esto ::
Codigo:
1 2 3 4 5 6 7 8 9 10 11
|
<?php
if($_COOKIE["mctekk"])
{
Aqui va el contenido si estas logeado
<?
}
else
{
Aqui va el contenido si no lo estas ...
<? }>
?>
|
Espero que les halla servido y buena suerte .....