Ciao a tutti,
ho sempre usato questa banale area riservata per far funzionare dei miei blog, ora ne sto facendo uno nuovo ma nn capisco perché nn mi fa' entrare nella pagina una volta loggiato.
login_correct.php
Login.php
in caso di utente di livello 2 dovrebbe rimandarmi a mypage.php
ma nn capisco perché mi rimanda sempre il messaggio di errore login errato, eppure ha sempre funzionato e il db è dettato correttamente
Grazie a chiunque possa darmi una mano a capire
ho sempre usato questa banale area riservata per far funzionare dei miei blog, ora ne sto facendo uno nuovo ma nn capisco perché nn mi fa' entrare nella pagina una volta loggiato.
login_correct.php
PHP:
<?php
//parte la sessione
session_start ();
?>
<!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>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link href="login.css" rel="stylesheet" type="text/css" />
<link href="nautica.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div class="container">
<div class="header"><!-- end .header --></div>
<div class="sidebar1">
</div>
<div class="content">
<br />
<br />
<br />
<table width="100%">
<tr>
<td align="center" valign="middle"><table width="50%">
<tr>
<td><img src="immagini/logo_testata.jpg" width="376" height="90" /></td>
</tr>
<tr>
<td height="34"> <?php
//connessione al databese
require 'db_connect.php';
if ((!isset($_POST['email'])) && (!isset($_POST['password']))) {
// form per il login
echo "<form method=\"post\" action=\"login.php\">
Email: <input type=\"text\" name=\"email\" class=\"inputlogin\"><br>
Password: <input type=\"password\" name=\"password\" class=\"inputlogin\"><br>
<button class=\"button orangeButt\"><br />Accedi<br /><br /></button>
</form>";
} else {
// query tabella utenti
$sql = mysql_query("SELECT * FROM users WHERE email='" . $_POST['email'] . "' AND password=('" . $_POST['password'] . "')");
if (mysql_num_rows($sql) > 0) {
while ($prova = mysql_fetch_array($sql)) {
$_SESSION['email']=$_POST['email'];
$_SESSION['password']=$_POST['password'];
$_SESSION['user_id']=$prova['id'];
$_SESSION['level'] = $prova['level'];
$_SESSION['username'] = $prova['username'];
}
switch ($_SESSION['level']) {
case 1:
header("Location: mypage.php");
break;
case 2:
header("Location: mypage2.php");
break;
case 3:
header("Location: mypage3.php");
break;
default:
// vuol dire che non è settata la sessione puoi tornare al login
header("Location: Login.php");
break;
}
} else {
echo "Login errato <br /><br /> <a href='login_correct.php' />Ritorna alla pagina login</a><br /><br /><a href='registrati.php'/>Registrati</a>";
}
}
?>
</td>
</tr>
<tr>
<td><br /><a href='registrati.php'/><h2>Registrati gratis</h2></a></td>
</tr>
</table></td>
</tr>
</table>
<br />
<br />
<br />
<!-- end .content --></div>
<div class="footer">
<!-- end .footer --></div>
<!-- end .container --></div>
</body>
</html>
Login.php
PHP:
<?php
//parte la sessione
session_start ();
//connessione al databese
require 'db_connect.php';
if ((!isset($_POST['email'])) && (!isset($_POST['password']))) {
// form per il login
echo "<form method=\"post\" action=\"login.php\">
Username: <input type=\"text\" name=\"email\" class=\"inputlogin\"><br>
Password: <input type=\"password\" name=\"password\" class=\"inputlogin\"><br>
<button class=\"button orangeButt\"><br />Accedi<br /><br /></button>
</form>";
} else {
// query tabella utenti
$sql = mysql_query("SELECT * FROM users WHERE email='" . $_POST['email'] . "' AND password=('" . $_POST['password'] . "')");
if (mysql_num_rows($sql) > 0) {
while ($prova = mysql_fetch_array($sql)) {
$_SESSION['email']=$_POST['email'];
$_SESSION['password']=$_POST['password'];
$_SESSION['user_id']=$prova['id'];
$_SESSION['level'] = $prova['level'];
$_SESSION['username'] = $prova['username'];
}
switch ($_SESSION['level']) {
case 1:
header("Location: mypage.php");
break;
case 2:
header("Location: mypage2.php");
break;
case 3:
header("Location: mypage3.php");
break;
default:
// vuol dire che non è settata la sessione puoi tornare al login
header("Location: Login.php");
break;
}
} else {
echo "Login errato <br /><br /> <a href='login_correct.php' />Ritorna alla pagina login</a><br /><br /><a href='registrati.php'/>Registrati</a>";
}
}
?>
in caso di utente di livello 2 dovrebbe rimandarmi a mypage.php
PHP:
<?php
session_start();
//connessione al database
include 'db_connect.php';
$result=$_SESSION['user_id'];
$result=$_SESSION['level'];
//inizio sessione per l'utente che ha effettuato il login
if(isset($_SESSION['email'])&& isset($_SESSION['password']))
{
$_SESSION['email'];
}else{
header("Location: login_correct.php");
}
?>
<!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">
ma nn capisco perché mi rimanda sempre il messaggio di errore login errato, eppure ha sempre funzionato e il db è dettato correttamente
Grazie a chiunque possa darmi una mano a capire