[PHP] Riconoscimento Utente Loggato

Discussione in 'PHP' iniziata da Alex@1983, 16 Novembre 2017.

  1. Alex@1983

    Alex@1983 Utente Attivo

    Registrato:
    9 Maggio 2015
    Messaggi:
    105
    Mi Piace Ricevuti:
    1
    Punteggio:
    18
    Ciao Ragazzi,

    ho di nuovo bisogno di voi.....

    Allora ho messo in piedi un piccolo e banale sistema di login ,creando una tabella utenti ed implementando questo "codicino" per loggarsi:

    PHP:
    <?php
    // Includo la connessione al database
    require('config.php');


    // Se il modulo viene inviato...
    if(isset($_POST['login']))
    {
        
        
    // Dati Inviati dal modulo
        
    $user = (isset($_POST['user'])) ? trim($_POST['user']) : '';    // Metto nella variabile 'user' il dato inviato dal modulo, se non viene inviato dò di default ''
        
    $pass = (isset($_POST['pass'])) ? trim($_POST['pass']) : '';    // Metto nella variabile 'pass' il dato inviato dal modulo, se non viene inviato dò di default ''
        
        // Filtro i dati inviati se i magic_quotes del server sono disabilitati per motivi di sicurezza
        
    if (!get_magic_quotes_gpc()) {
            
    $user addslashes($user);
            
    $pass addslashes($pass);
        }
        
        
    // Crypto la password e la confronto con quella nel database
        //$pass = md5($pass);
        
        // Controllo l'utente esiste
        
    $query mysql_query("SELECT id FROM utenti WHERE user = '$user' AND pass = '$pass' LIMIT 1");
        
        
    // Se ha trovato un record
        
    if(mysql_num_rows($query) == 1)
        {
            
    // prelevo l'id dal database
            
    $login mysql_fetch_array($query);
            
            
    // Creo una variabile di sessione
            
    $_SESSION['login'] = $login['id'];
            
            
    // reindirizzo l'utente
            
    header('Location: LOGINInserisci.php');
            exit;
        }
        
    // se non esiste da l'errore
        
    else
            die(
    'Nome Utente o Password errati');
    }
    ?>
    <!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" />
    <title>Login</title>
    </head>

    <body>
    <form action="" method="post">
     <input name="user" type="text" id="user" value="Nome Utente" onfocus="if(this.value=='Nome Utente') this.value='';" /><br />
     <input name="pass" type="password" id="pass" value="Password" onfocus="if(this.value=='Password') this.value='';" /><br />
     <input name="login" type="submit" value="Login" /><br />
    </form>
    </body>
    </html>
    Ora quello che avrei bisogno di fare è riconscere l'utente loggato e riportarne il nome all'interno di un campo del form al quale si accede loggandosi.

    In pratica ho un form con i campi DATA | OPERATORE | INTERVENTO | DESCRIZIONE | NOTE
    .....e vorrei che il campo OPERATORE si autocompilasse con il nome dell'utente loggato

    Mi date una mano ?.....

    Grazie
     
  2. bubino8

    bubino8 Utente Attivo

    Registrato:
    28 Aprile 2017
    Messaggi:
    318
    Mi Piace Ricevuti:
    18
    Punteggio:
    18
    Sesso:
    Maschio
    Località:
    BZ
    Ciao
    Quando crei la sessione di login ne crei un'altra col nome utente.
    PHP:
    $_SESSION['login'] = $login['id'];
    $_SESSION['user'] = $login['user o nomeutente'];
    Fammi sapere
     
  3. Alex@1983

    Alex@1983 Utente Attivo

    Registrato:
    9 Maggio 2015
    Messaggi:
    105
    Mi Piace Ricevuti:
    1
    Punteggio:
    18
    Bubino8

    Ottimo come sempre !!!!

    Funzia!!!!

    mi aiuti con questo altro...problemino???

    sto provando ad implementare un sistema di log , tracciando diverse azioni compiute dagli utenti..... questa qui però proprio non vuole saperne:

    LOGOUT utente , alla pressione del tasto dovrebbe scrivermi nel db l'azione effettuata...ma non va??????

    Ecco il codice :

    BUTTON

    PHP:
    <tr>
        <
    td><button name="logout" id="logout" onclick="location.href='logout.php'" style="
                                                      width: 163px;
                                                  height: 40px;
                                                      font-size: large;
                                                  margin-bottom: 20px;
                                                  "
    >E S C I</button></td>
    </
    tr>  
    QUERY

    PHP:
    <?PHP
     
     
    if(isset($_POST['logout'])){
        
    header("Cache-Control: no-cache");

    include(
    "connectDB.php");   

    mysql_select_db("my_web1105");

            
    $id2 'NULL';
            
    $dataOradate("d/n/Y g:i.s A");
            
    $tipo'LOGOUT';
            
    $oper $_SESSION['login'];
            
    $idIsp '---';
            
    $isp '---';
            
    $rich '---';
            
    $esito '---';
            
    $viol '---';
            
    $desc '---';
            
    $note '---';
     

       
    $toinsert2 "INSERT INTO `RegistroIspezioni2017_Log`
            (id, tipo, data, id_ispezione, operatore, ispezione, richiedente, esito, violazione, descrizione, note)
                VALUES
                ('
    $id2',
                 '
    $tipo',
                 '
    $dataOra',
                 '
    $idIsp',
                 '
    $oper',
                 '
    $isp',
                 '
    $rich',
                 '
    $esito',
                 '
    $viol',
                 '
    $desc',
                 '
    $note'
                        )"
    ;         
        
        
    $res2 mysql_query($toinsert2);

    }
    ?>
    dove sbaglio ??
     
  4. bubino8

    bubino8 Utente Attivo

    Registrato:
    28 Aprile 2017
    Messaggi:
    318
    Mi Piace Ricevuti:
    18
    Punteggio:
    18
    Sesso:
    Maschio
    Località:
    BZ
    Per prima cosa ti consiglio di utilizzare mysqli, perchè mysql è ormai obsoleto.

    Per quanto riguarda il logout:
    il button non è all'interno di un form, è un bottone che ti porta semplicemente alla pagina logout.php senza passare dati tramite POST.

    potresti fare una cosa del tipo
    HTML:
     onclick="location.href='logout.php?confermato'" 
    e recuperi con GET

    PHP:
    if(isset($_GET['confermato'])){


    Fammi sapere;)
     
  5. Alex@1983

    Alex@1983 Utente Attivo

    Registrato:
    9 Maggio 2015
    Messaggi:
    105
    Mi Piace Ricevuti:
    1
    Punteggio:
    18
    niente da fare.....

    ho modificato in questo modo..... ma non funziona

    BUTTON
    PHP:
    <td><button name="logout" id="logout" onclick="location.href='logout.php?confermato'" style="
                                                                                            width: 163px;
                                                                                            height: 40px;
                                                                                            font-size: large;
                                                                                            margin-bottom: 20px;
                                                                                            "
    >E S C I</button></td>
    QUERY
    PHP:
    if(isset($_GET['confermato'])){
        
    header("Cache-Control: no-cache");

    include(
    "connectDB.php");   

    mysql_select_db("my_web1105");

            
    $id2 'NULL';
            
    $dataOradate("d/n/Y g:i.s A");
            
    $tipo'LOGOUT';
            
    $oper $_SESSION['login'];
            
    $idIsp '---';
            
    $isp '---';
            
    $rich '---';
            
    $esito '---';
            
    $viol '---';
            
    $desc '---';
            
    $note '---';
    Qualcosa ancora non va ......
     
  6. bubino8

    bubino8 Utente Attivo

    Registrato:
    28 Aprile 2017
    Messaggi:
    318
    Mi Piace Ricevuti:
    18
    Punteggio:
    18
    Sesso:
    Maschio
    Località:
    BZ
    prova a stampare un echo e vedere se almeno if te lo legge, ma non esegue la query
     
  7. Alex@1983

    Alex@1983 Utente Attivo

    Registrato:
    9 Maggio 2015
    Messaggi:
    105
    Mi Piace Ricevuti:
    1
    Punteggio:
    18
    Risolto!!!

    ho dovuto fare un "accrocchio" perchè in pratica .... cambiando pagina alla pressione del tasto non mi eseguiva la query ..... mentre rimanendo sulla stessa pagina la query veniva eseguita regolarmente

    Quindi ...(la pagina dove si trova il tasto si chiama Inserisci.php)

    BUTTON
    PHP:
    td><button name="logout" id="logout" onclick="location.href='Inserisci.php?confermato'" style="
                                                                                            width: 163px;
                                                                                            height: 40px;
                                                                                            font-size: large;
                                                                                            margin-bottom: 20px;
                                                                                            "
    >E S C I</button></td>

    alla fine della query ho inserito
    PHP:
    header("location: logout.php");
    E così ...funzia!!1

    Grazie per il supporto! ;)
     
  8. bubino8

    bubino8 Utente Attivo

    Registrato:
    28 Aprile 2017
    Messaggi:
    318
    Mi Piace Ricevuti:
    18
    Punteggio:
    18
    Sesso:
    Maschio
    Località:
    BZ
Sto caricando...

Condividi questa Pagina