Cookie y sessions

Hola mira mi código de loguin es este por lo de header no pude ya que si se loguea incorrectamente igual se redirecciona. Como hago para que si se loguea incorrectamente no se redireccione a ningún lado o se redireccione a la página del loguin con un error, entiendo que por lo que me pusiste es la sesión para que si no esta logueado se redireccione a la página anterior, ¿se podría usar para el mismo fin verdad?
Otra cosa me podrías explicar un poco más el tema del restringir, la parte del código del body de la página.
<?php
// Configura los datos de tu cuenta
$dbhost='';
$dbusername='';
$dbuserpass='';
$dbname='';
//por seguridad no pongo mis datos de la base de datos
mysql_connect ($dbhost, $dbusername, $dbuserpass);
mysql_select_db($dbname) or die('Cannot select database');
if ($_POST['usuario']) {
$usuario=$_POST['usuario'];
$pass1=$_POST['pass1'];
if ($pass1==NULL) {
echo "La password no fue enviada";
}else{
$query = mysql_query("SELECT usuario,pass1 FROM usuarios WHERE usuario = '$usuario'") or die(mysql_error());
$data = mysql_fetch_array($query);
if($data['pass1'] != $pass1) {
echo "Login incorrecto";
}else{
$query = mysql_query("SELECT usuario,pass1 FROM usuarios WHERE usuario = '$usuario'") or die(mysql_error());
$row = mysql_fetch_array($query);
$_SESSION["s_usuario"] = $row['usuario'];
echo "Has sido logueado correctamente ".$_SESSION['s_usuario']." y puedes acceder al index.php.";
}
}
}
?>
Desde ya muchas gracias me están sirviendo tus consejos

1 Respuesta

Respuesta
1
Por lo que entiendo que quieres hacer, deberías sustituir la línea
echo "Login incorrecto";
por:
header("Location: index.php?error=incorrecto");
Y la línea de "Has sido logueado correctamente etc.
Por:
header("Location: index2.php");
Presumo que tu página de login debe ser index.php, por tanto se debe volver a ella en caso de login incorrecto. Allí puedes detectar con $_GET["error"] si se ha entrado con un parámetro de error por login incorrecto.
La página 'buena' de los ya logeados, debería ser otra como index2.php para hacértelo más fácil. La otra alternativa es, como ya te expliqué colocar un condicional que muestre la página 'buena' sólo si el login es correcto.
La estructura es:
<?php
if ($login != "correcto") {
  echo "
<p>Login fallado</p>
";
} else {
?>
<!-- Aquí puedes poner código HTML normal: tu página buena -->
<p> Bienvenido logeado!</p>
<?php
} // Fin del else
?>
La verdad sos un genio me solucionaste el problema entendí a la perfección tu explicación, cuando haya cambiado los códigos los subo para que se vea y podamos compartir con todos.
Gracias!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas