Login "username o password errata"

di il
5 risposte

Login "username o password errata"

Buongiorno a tutti, sto cercando di creare una pagina di login, ho creato la tabella "utenti" su phpmyadmin, e adesso ho inserito il codice ma quando vado ad inserire i dati, giusti o errati che siano mi compare il messaggio di errore e non mi fa accedere. Utilizzo php 8 e non riesco a trovare l'errore.

Questo è il dbconfig.php:
<?php
	//Stabilisco la connessione con il server specificando i parametri
	$dbhost = "localhost";          //Nome server
	$dbname = "db";      //Nome db
	$dbuser ="user";			//Nome utente db 
	$dbpassword = "pass";	//Password utente db 
	$connection = mysqli_connect($dbhost, $dbuser, $dbpassword, $dbname);
	//Controllo esito connessione
	mysqli_select_db($connection, "reviewplayers");
	if (!$connection) {
		die("Connessione fallita: " . mysqli_connect_error());
	}
?> 
Questo è il codice php:
<?php
    
    include('../include/dbconfig.php');

    //Acquisisco i dati dal form HTML e li inserisco nelle variabili $
    $username = $_POST["username"];
    $password = $_POST["password"];

    //Protezione per SQL injection
    $username = stripslashes($username);
    $password = stripslashes($password);
    $passmd5 = md5($password);

    //Lettura della tabella utenti
    $sql = "SELECT * FROM utenti WHERE username ='" . $username . "' AND password = '" . $passmd5 . "'"; 
    $result = mysqli_query($connection, $sql);
    $conta = mysqli_num_rows($result);
    if($conta == 1) {
        session_start();
        $_SESSION['username'] = $username;
        $_SESSION['password'] = $passmd5;
        header("Location: utente/login.php");
    }
    else {
        echo "Identificazione non riuscita: Username o Password errati!";
    }
?>
Ed infine il codice di "login.php":
<?php
	session_start();
	if(!isset($_SESSION['username'])) {
		header("Location: ../accesso.php");
	}
?>

<html>
	<body>
		Identificazione utente riuscita! Benvenuto nell'area riservata <br/>
		premi su <a href="logout.php">Logout</a> per disconnetterti
	</body>
</html>

5 Risposte

  • Re: Login "username o password errata"

    Claudio080 ha scritto:


    sto cercando di creare una pagina di login, ho creato la tabella "utenti" su phpmyadmin, e adesso ho inserito il codice ma quando vado ad inserire i dati, giusti o errati che siano mi compare il messaggio di errore e non mi fa accedere.
    Probabilmente l'hash MD5 della password o qualche altro dato non corrispondono a quelli attesi.
    Fai debug della tua applicazione e verifica il valore delle variabili.
  • Re: Login "username o password errata"

    Alka ha scritto:


    Claudio080 ha scritto:


    sto cercando di creare una pagina di login, ho creato la tabella "utenti" su phpmyadmin, e adesso ho inserito il codice ma quando vado ad inserire i dati, giusti o errati che siano mi compare il messaggio di errore e non mi fa accedere.
    Probabilmente l'hash MD5 della password o qualche altro dato non corrispondono a quelli attesi.
    Fai debug della tua applicazione e verifica il valore delle variabili.
    Scusami ma è la prima volta che uso php, ho stampato le variabili insieme al messaggio di errore e sono corrette, cioè sono quelle che vengono inserite, quindi credo sia un problema di md5.
  • Re: Login "username o password errata"

    Claudio080 ha scritto:


    Scusami ma è la prima volta che uso php, ho stampato le variabili insieme al messaggio di errore e sono corrette, cioè sono quelle che vengono inserite, quindi credo sia un problema di md5.
    Io infatti sarai partito dal verificare la corrispondenza dell'hash MD5, poiché è probabile che sia quello a essere errato.

    Ciao!
  • Re: Login "username o password errata"

    Quando hai creato gli utenti che password gli hai messo? Devi prima passarla con md5! Mica gli avrai messo la password in chiaro! (Capita!)
  • Re: Login "username o password errata"

    Md5 è storia.
    Va usato argon2i o bcrypt. Usa la funzione password_hash()
Devi accedere o registrarti per scrivere nel forum
5 risposte