Visualizzazione dei risultati da 1 a 2 su 2

Discussione: ennesimo login

  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    29

    ennesimo login

    Ho realizzato un ennesimo script di login chi lo sa correggere?
    Dovrei controllare che lo username e la password siano uguali a quelli inseriti nel db che io inserisco tramite una form di registrazione.

    In fondo ho anche inserito la tabella nel db magari può far comodo a chi lo vorrà correggere
    SCRIPT
    <?session_start()?>
    <? // setto i parametri della connessione
    $dbhost="localhost";
    $dbuser="291971";
    $dbpass="291971";
    $tbname="autori";
    $conn = mysql_connect($dbhost,$dbuser,$dbpass) or die("impossibile accedere");
    //connessione server
    $dbname="291971";
    mysql_select_db($dbname,$conn);








    $login=$records['username'];
    $password=$records['password'];
    $log=$POST['username'];
    $pass=$POST['password'];

    if (($log==$login)&&($pass==$password)){


    }
    else if (($log!=$login)&&($pass!=$password)){


    }






    if (isset($_POST['submit'])){

    $sql="SELECT username,password FROM ".autori."
    WHERE username=('".$_POST['username']."')
    AND password=('".$_POST['password']."')";
    $res=mysql_query($sql,$conn);}
    else {
    echo '<FORM name="esempio" action="logcorr.php" METHOD="POST">';

    echo 'username<INPUT type="text" name="username">';
    echo '
    ';
    echo '
    ';
    echo 'password <INPUT type="password" name="password">';
    echo '
    ';
    echo '
    ';
    echo '<INPUT type="submit" name="submit" value="login">';
    echo'</FORM>';
    }




    if(!$res){
    echo"non ci sono record";
    }else {

    while($records=mysql_fetch_assoc($res));
    echo"login effettuato";

    }

    $var1=$_POST['username'];

    $_SESSION['sessione']=$var1;
    // echo "$_SESSION[sessione]";





    ?>


    tabella del db
    id int(4) No
    nome varchar(20) No
    cognome varchar(20) No
    dataNascita int(11) Si NULL
    luogoNascita varchar(20) Si NULL
    curriculum text Si NULL
    giurato (1) Si NULL
    opera int(20) No 0
    username varchar(15) No
    password varchar(15) No

  2. #2
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    non ho letto tutto il codice, mi è bastato vedere questo per capire che hai sbagliato:

    codice:
    $sql="SELECT username,password FROM ".autori."
    WHERE username=('".$_POST['username']."')
    AND password=('".$_POST['password']."')";
    Qui ci sono 2 errori gravi:

    1. Non controlli cosa ti arriva da post.
    2. La query permette tramite una semplice sql injection di entrare senza conoscere la password.

    Ciao

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.