• User

    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? Grazie

    LOGIN

    [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]