Utilizo un
registro.html y un
login.html. Y de php...
REGISTER.php Código PHP:
<?
// Configura los datos de tu cuenta
$dbhost='xxxxxxxxx';
$dbusername='xxxxxxxxx';
$dbuserpass='xxxxxxxxx';
$dbname='xxxxxxxxx';
// Conexión a la base de datos
mysql_connect ($dbhost, $dbusername, $dbuserpass);
// Seleccion de la base de datos
mysql_select_db($dbname) or die('Cannot select database');
// Preguntaremos si se han enviado ya las variables necesarias
if (isset($_POST["username"])) {
$username = $_POST["username"];
$password = $_POST["password"];
$cpassword = $_POST["cpassword"];
$email = $_POST["email"];
// Hay campos en blanco
if($username==NULL|$password==NULL|$cpassword==NULL|$email==NULL) {
echo "un campo está vacio.";
}else{
// ¿Coinciden las contraseñas?
if($password!=$cpassword) {
echo "Las contraseñas no coinciden";
}else{
// Comprobamos si el nombre de usuario o la cuenta de correo ya existían
$checkuser = mysql_query("SELECT username FROM users WHERE username='$username'");
$username_exist = mysql_num_rows($checkuser);
$checkemail = mysql_query("SELECT email FROM users WHERE email='$email'");
$email_exist = mysql_num_rows($checkemail);
if ($email_exist>0|$username_exist>0) {
echo "EL nombre de usuario o la cuenta de correo estan ya en uso";
}else{
//Todo parece correcto procedemos con la inserccion
$query = "INSERT INTO users (username, password, email) VALUES('$username','$password','$email')";
mysql_query($query) or die(mysql_error());
echo "El usuario $username ha sido registrado de manera satisfactoria.";
}
}
}
}
?>
LOGIN.php Código PHP:
<?
$dbhost='xxxxxxxxxx';
$dbusername='xxxxxxxxxx';
$dbuserpass='xxxxxxxxxx';
$dbname='xxxxxxxxxx';
// Conectar a la base de datos
mysql_connect ($dbhost, $dbusername, $dbuserpass);
mysql_select_db($dbname) or die('Cannot select database');
if ($_POST['username']) {
//Comprobacion del envio del nombre de usuario y password
$username=$_POST['username'];
$password=$_POST['password'];
if(empty($password)) {
echo "La password esta vacia";
}else{
$query = mysql_query("SELECT username,password FROM users WHERE username = '$username'") or die(mysql_error());
$data = mysql_fetch_array($query);
if($data['password'] != $password) {
echo "Login incorrecto";
}else{
$query = mysql_query("SELECT username,password FROM users WHERE username = '$username'") or die(mysql_error());
$row = mysql_fetch_array($query);
@session_start(); // <-------
$_SESSION["s_username"] = $row['username'];
echo "Has sido logueado correctamente ".$_SESSION['s_username']." y puedes acceder al <a href='http://www.gilgo-designs.es/index.php'>ADMINISTRACIÓN</a>";
}
}
}
?>
LOGOUT.php Código PHP:
<? session_start();
$_SESSION = array();
header("Location: index.php");
?>
INDEX.php (Que podria ser cualquier otra pagina ya html o php, donde solo pueda verse por usuario registrado) Código PHP:
<?php
session_start();
if ($_SESSION['username']=="")
?>
"Bienvenido al menú para administradores.
Aquí puedes puedes agregar contenidos"
Tambien probé con este:
Código PHP:
<?
session_start();
if(isset($_SESSION['usuario']) and $_SESSION['estado'] == 'Autenticado')
{
// Lo dejas entrar a la pagina
}
else
{
// Usuario que no se ha logueado
echo "No tienes permiso para entrar a esta pagina";
exit();
}
?>
"Bienvenido al menú para administradores.
Aquí puedes puedes agregar contenidos"