Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2012
    Messaggi
    12

    Prepared statement php procedurale

    Salve a tutti,
    ho un sito cui si accede tramite password e vorrei inserire i prepared statements per controllare la password e non essere soggetto ad attacchi.

    Tuttavia il mio livello di programmazione (procedurale) è abbastanza basico e necessiterei di un aiuto.

    Attualmente per entrare con la password uso questa procedura

    Codice PHP:
    $db_host "localhost";
    $db_user "root";
    $db_password "dbpass";
    $db_name "sitoname";
    $db mysql_connect($db_host$db_user$db_password);
    $result_db  mysql_query($query_db $db);

     if (
    $db == FALSE)die ( 'Errore nella selezione del database_.');
    mysql_select_db($db_name$db)or die ("Errore nella selezione del database. Riprovate a collegarvi più tardi.");

    $query_autdb "SELECT * FROM fatta_users WHERE password=$_POST['password']" ;   
    $result_autdb mysql_query($query_autdb$db);      
    $row_autdb mysql_fetch_array($result_autdb);      
    $num_rows_autdb mysql_num_rows($result_autdb);      

    if (
    $num_rows_autdb == AND isset($_POST['password'])) :          
        
    $alert_userpass "Username o password errati. Riprovare.";      
    elseif (
    $num_rows_autdb == ) :

    else :        
        
    $_SESSION["id_sessione"] = $row_autdb['id'];        
        
    $_SESSION["attivato"] = $row_autdb['attivo'];        
       
    header("location:paginadiaccesso.php");
       exit();      
    endif; 
    Dove in pratica se trova corrispondenza della password nel db mi assegna delle variabili di sezione che poi mi sono utili.

    Qualcuno mi sa aiutare?
    Ultima modifica di Janhus81; 18-05-2016 a 22:09

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2011
    residenza
    Arezzo
    Messaggi
    194
    le funzioni mysql sono deprecate, ti consiglio mysqli (OOP che procedurale) o PDO (solo OOP)
    per quanto ne so io le prepared statement sono una caratteristica della OOP, ad esempio con PDO faresti una cosa del tipo

    Codice PHP:
    // ...

    $query_autdb "SELECT * FROM fatta_users WHERE password=$_POST['password']" ;   
    try{
        
    $result_autdb $db->prepare($query_autdb);
        
    $result_autdb->execute();
    }
    catch(
    PDOException $e){
        echo 
    "Errore nella query....<br>".$e->getMessge();
        exit();
    }

    //... 
    dove chiaramente la connessione $db la fai con PDO...
    Riccardo Sadocchi
    Microsoft MCP C#

  3. #3
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Le password non si salvano in chiaro !!!

    Poi cosa succede se 2 utenti hanno la stessa password ? Non richiedi l'immissione del nome dell'utente ?
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2011
    residenza
    Arezzo
    Messaggi
    194
    è vero non ci avevo fatto caso che non controlla l'abbinamento username password...
    Riccardo Sadocchi
    Microsoft MCP C#

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2012
    Messaggi
    12
    No beh in questo caso non è un'autenticazioni per utenti ma solo per amministratore del sito. Riguardo le password ovviamente userei l'md5.

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.