Visualizzazione dei risultati da 1 a 6 su 6

Discussione: sistema di login.

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2003
    Messaggi
    281

    sistema di login.

    salve,sto cercando di realizzare un sistema di login. usando il tasto cerca ho trovato una discussione dove veniva promosto del codice che, a detta di quelli che vi hanno partecipato, sembrava essere veramente valido.
    il problema è che buona parte del codice non l'ho capita poi troppo........

    il codice è il seguente:

    codice:
    $sid = $_COOKIE['sid'];
    
    */*/  if (is_null($sid)) {
    
        if (!isset($_POST['login'])) {/* visualizzo il form di login */}
    
        else {
    
    */*/        mysql_connect("localhost","root","");
    
    */*/        mysql_select_db("babylonia");
    
            $username = (string)  mysql_escape_string(strtolower(trim($_PO
    ST['username'])));
    
            $password = (string)  mysql_escape_string(strtolower(trim($_PO
    ST['password'])));
    
    */*/        $sql_query = mysql_query("SELECT uid,password,status FROM user WHERE username='".$username."'");
    
    */*/        $sql_array = mysql_fetch_assoc($sql_query);
    
    */*/        if (mysql_num_rows($sql_query) < 1) {echo "nessun utente con questo username";}
    
    */*/        elseif ((int) $sql_array['status'] < 2) {echo "utente non autorizzato";}
    
            else {
    
    */*/            if (md5($password) == $sql_array['password']) {
    
                    list($usec, $sec) = explode(' ', microtime());
    
                    mt_srand((float) $sec + ((float) $usec * 100000));
    
                    $sid = md5(uniqid(mt_rand(), true));
    
                    if ($_POST['cookie'] == "ok") {$expire = (int) time()+31536000;}
    
                    else {$expire = (int) 0;}
    
                    if (mysql_query("INSERT INTO session (sid, uid, date) VALUES ('".$sid."', '".$sql_array['uid']."', ".time().")") && setcookie("sid",$sid,$expire)) {echo "utente loggato";}
    
                    else {"echo login fallito";}
    
                }
    
            }
    
        }
    
    }

    le righe di codice contrassegnate con
    */*/

    sono le righe che ho capito, le altre non ci ho capito praticamente nulla


    c'è una qualche anima pia che è disposta a spiegarmele? VVoVe:

  2. #2
    non ci ho capito neanche io,
    io l'ho fatto con una form dove immetti la passw.
    se vuoi ti mando il codice
    ciao

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2003
    Messaggi
    281
    Originariamente inviato da hallo63
    non ci ho capito neanche io,
    io l'ho fatto con una form dove immetti la passw.
    se vuoi ti mando il codice
    ciao
    se ci sono le sessioni manda pure

  4. #4
    Utente di HTML.it
    Registrato dal
    May 2003
    Messaggi
    281

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2003
    Messaggi
    281

  6. #6

    Re: sistema di login.

    codice:
    $username = (string)  mysql_escape_string(strtolower(trim($_PO
    ST['username'])));
    
    $password = (string)  mysql_escape_string(strtolower(trim($_PO
    ST['password'])));
    mysql_escape_string non fa altro che aggiungere gli slash
    strtolower rende la stringa tutta minuscola
    ex. PiPpO's lo fa diventare pippo\ 's

    codice:
    list($usec, $sec) = explode(' ', microtime());
    mt_srand((float) $sec + ((float) $usec * 100000));
    $sid = md5(uniqid(mt_rand(), true));
    le prime due righe inizializzano mt_rand per generare un numero casuale
    l'ultima riga crea un numero univoco

    codice:
    if ($_POST['cookie'] == "ok") {$expire = (int) time()+31536000;}
    else {$expire = (int) 0;}
    se la variabile $_POST['cookie'] che viene dal form ha valore "ok" imposta il valore di $expire a ora attuale in secondi + 31536000 altrimenti la imposta a zero
    $expire è il tempo di validità di un cookie che verrà creato, nel primo caso avrà validità 1 anno (60 * 60 * 24 *365 = 31536000) nel secondo se estinguerà alla chiusura del browser

    codice:
    if (mysql_query("INSERT INTO session (sid, uid, date) VALUES ('".$sid."', '".$sql_array['uid']."', ".time().")") && setcookie("sid",$sid,$expire))
    {echo "utente loggato";}
    else
    {"echo login fallito";}
    se l'inserimento va a buon fine, crea il cookie di nome si sid stampa utente loggato altrimenti fallisce il login


    quando non conosci una funzione, vai alla pagina www.php.net/nome_della_funzione

    ex www.php.net/mt_srand

    E' la mia opinione ed io la condivido
    Non condivido la tua idea ma darei la vita perché tu la possa esprimere (Voltaire)
    Scrivi sul muro

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.