Oggi vediamo come creare un semplice login in php con la password del database criptata.
Prima di tutto creiamo il nostro pagina login.php che sarà la pagina dove inseriremo il nostro codice html.
1 2 3 4 5 6 7 8 |
<!-- Semplice form login--> <form action="verify.php" method="post"> User Name:<br> <input type="text" name="user"><br><br> Password:<br> <input type="password" name="pass"><br><br> <input type="submit" name="submit" value="Login"> </form> |
Bene ora creiamo la pagina users.php che sarà la pagina che potranno vedere solo le persone loggate.
1 2 3 4 5 6 7 8 9 10 |
<?php // Se la sessione è settata continua con la nostra pagina //se no veniamo rindirizzato alla pagina di login session_start(); if(!$_SESSION['loggato']){ header("Location: login.php"); exit; } echo 'Benvenuto utente , '.$_SESSION['user']; ?> |
Bene ora arriviamo nel cuore del programma la pagina php dove verificherà utente e crea le variabili di sessioni.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
<?php if(isset($_POST['submit'])){ $dbHost = "localhost"; //Locazione del database $dbUser = "root"; //User del database $dbPass = ""; //Password del database $dbDatabase = "login"; //Nome del database $db = mysql_connect($dbHost,$dbUser,$dbPass)or die("Errore nella connessione del db"); //Connect to the databasse mysql_select_db($dbDatabase, $db)or die("Impossibile trovare il database"); //Prendo utente e password passati dal form $usr = mysql_real_escape_string($_POST['user']); $pas = hash('sha256', mysql_real_escape_string($_POST['pass']));//La password sul db e criptata // Creo la query $sql = mysql_query("SELECT * FROM user WHERE User='$usr' AND Pwd='$pas' LIMIT 1"); //Se la query ottiene buon esito setto le variabili di sessione per il login if(mysql_num_rows($sql) == 1){ $row = mysql_fetch_array($sql); session_start(); $_SESSION['user'] = $row['User']; $_SESSION['loggato'] = TRUE; header("Location: users.php"); // Modify to go to the page you would like exit; }else{ //Se la query non ritorna nessun risultato reindirizzo alla pagina del login header("Location: login.php"); exit; } }else{ header("Location: index.php"); //Reindirizza al homepage exit; } ?> |