redireccionar - Esta página web tiene un bucle de redireccionamiento-PHP Login
redireccionar html (1)
Comentario a responder:
Lo que creo que está sucediendo es que su código se está extrayendo y no lo está viendo, lo que hace que pelee contra lo que debería mostrarle como un error.
Tienes $login_session =$row[''username''];
utilizando el "nombre de usuario" como la fila, pero no lo está seleccionando en su consulta, select myUsername from login where myUsername
.
Entonces, estoy pensando que si esa fila realmente no existe, tendrías que hacer
$login_session =$row[''myUsername''];
Estoy probando un ejemplo de página de inicio de sesión en php. Me aparece el error: esta página web tiene un bucle de redireccionamiento. Los detalles dicen: Código de error: ERR_TOO_MANY_REDIRECTS
Aquí está mi código:
index.php
<?php
include(''login.php''); // Includes Login Script
if(isset($_SESSION[''login_user''])){
header("location: profile.php");
}
?>
<form action="" method="post">
<label>UserName :</label>
<input id="name" name="username" placeholder="username" type="text">
<label>Password :</label>
<input id="password" name="password" placeholder="**********" type="password">
<input name="submit" type="submit" value=" Login ">
<span><?php echo $error; ?></span>
</form>
login.php
<?php
session_start();
$error='''';
if (isset($_POST[''submit''])) {
if (empty($_POST[''username'']) || empty($_POST[''password''])) {
$error = "Username or Password is invalid";
}
else
{
$username=$_POST[''username''];
$password=$_POST[''password''];
$connection = mysql_connect("localhost", "root", "");
$username = stripslashes($username);
$password = stripslashes($password);
$username = mysql_real_escape_string($username);
$password = mysql_real_escape_string($password);
$db = mysql_select_db("rjtest", $connection);
$query = mysql_query("select * from login where myPassword=''$password'' AND myUserName=''$username''", $connection);
$rows = mysql_num_rows($query);
if ($rows == 1) {
$_SESSION[''login_user'']=$username;
header("location: profile.php");
} else {
$error = "Username or Password is invalid";
}
}
}
?>
profile.php
<?php
include(''session.php'');
?>
<!DOCTYPE html>
<html>
<head>
<title>Your Home Page</title>
<link href="style.css" rel="stylesheet" type="text/css">
</head>
<body>
<div id="profile">
<b id="welcome">Welcome : <i><?php echo $login_session; ?></i></b>
<b id="logout"><a href="logout.php">Log Out</a></b>
</div>
</body>
</html>
session.php
<?php
$connection = mysql_connect("localhost", "root", "");
$db = mysql_select_db("rjtest", $connection);
session_start();
$user_check=$_SESSION[''login_user''];
$ses_sql=mysql_query("select myUsername from login where myUsername=''$user_check''", $connection);
$row = mysql_fetch_assoc($ses_sql);
$login_session =$row[''username''];
if(!isset($login_session)){
header(''Location: index.php'');
}
?>
Y logout.php
<?php
session_start();
if(session_destroy())
{
header("Location: index.php");
}
?>
No puedo entender por qué. El sitio donde obtuve este código ahora está inactivo, por eso estoy preguntando esto aquí. Espero que me puedan ayudar. Perdón por la larga publicación sin embargo.