- Home
- Categorie
- Coding e Sistemistica
- PHP
- sessioni login non funzionante
-
sessioni login non funzionante
Ciao a tutti,
sto diventando matto con le sessioni del login, ogni volta che mi loggo dopo qualche secondo che cambio pagina mi butta fuori, mi controllate per favore se il codice ? corretto? GrazieLOGIN
[PHP]
<form action="<?=$PHP_SELF?>" method="post" name="form_login">
<tr><td align="center" height="80">
<table width="300" height="80" border="0" cellspacing="0" cellpadding="0" align="center"><tr><td align="left" width="150" height="40"><div class="testo_grigio_bold">USERNAME</div></td><td align="right" width="150"><input type="text" name="username" value="<?=$_POST['username']?>" size="35" maxlength="40" height="30"></td></tr><tr><td align="left" width="150" height="40"><div class="testo_grigio_bold">PASSWORD</div></td><td align="right" width="150"><input type="password" name="password" value="<?=$_POST['password']?>" size="35" maxlength="40" height="30"></td></tr></table></td></tr>
<tr><td align="center" height="40"><input type="hidden" name="pagina_login" value="2"><input name="submit" type="submit" value="ENTRA" class="stylesubmitoff"></td></tr> </form>
[/PHP][PHP]
<?phpif(isset($_POST['pagina_login']) && (trim($_POST['pagina_login']) == "2")){// controllo sul formato dell'email if((!isset($_POST['username'])) || ($_POST['username'] == "") || (!preg_match("/^[a-z0-9]+$/i", $_POST['password']))) { $login_avviso1 = "Attenzione, username non corretta"; } // controllo sul formato della password elseif((!isset($_POST['password'])) || ($_POST['password'] == "") || (!preg_match("/^[a-z0-9]+$/i", $_POST['password']))) { $login_avviso2 = "Attenzione, password non corretta"; }else{ // se i parametri sono in formato corretto interroghiamo il database $usernamelogin = $_POST['username']; $passwordlogin = $_POST['password'];// controlliamo se i parametri sono presenti in tabella $sql_controllo = "SELECT a_login.* FROM a_login WHERE (username='$usernamelogin' AND password='$passwordlogin')";$result_controllo = mysql_query($sql_controllo,$conn) or die (mysql_error());$row_controllo = mysql_num_rows($result_controllo);
if ($row_controllo>0){ $sql_controllo2 = "SELECT a_login.* FROM a_login WHERE (username='$usernamelogin' AND password='$passwordlogin')";$result_controllo2 = mysql_query($sql_controllo2,$conn) or die (mysql_error());$row_controllo2 = mysql_fetch_array($result_controllo2);
$attivo = $row_controllo2["attivo"];$idlogin = $row_controllo2["id_login"];
if ($attivo=="si"){//Salvo i dati...$_SESSION['passwordlogin'] = $passwordlogin;
$admin = $row_controllo2["admin"];
if ($admin=="no"){header("Location: vuvuvu.sito.com/elearning/utente/utente_main.php");}elseif ($admin=="si"){header("Location: vuvuvu.sito.com/elearning/admin/admin_main.php");}}else{
$login_avviso3 = "ANCORA NON SEI ABILITATO PER ENTRARE<br>ATTENDI L'ARRIVO DELLA EMAIL DI ABILITAZIONE DA PARTE DI ADAMIS"; }
}else{ // esito login negativo $login_avviso3 = "I DATI INSERITI NON SONO CORRETTI"; }
}}?>
[/PHP]ALTRE PAGINE DEL BACKEND
[PHP]<?phpif(isset($_POST['pagina_login']) && (trim($_POST['pagina_login']) == "1")){
//Recupero i dati...$passwordlogin = $_SESSION['passwordlogin'];
if(isset($passwordlogin)){ // sessione ok rimani nel backend }else{header("Location: vuvuvu.sito.com/elearning/index_login_formazione2.php");} }?>[/PHP]