Login in Php

Login Php (parte 1 del tutorial)

La login php è il metodo essenziale per gestire l’autenticazione di un utente abilitato ad entrare in una determinata area del sito protetta.

Login php e il form

login php

Partiamo dal form in cui si dovranno inserire le credenziali:

<form action="login.php" method="post">
Username: <input type="text" name"username"><br>
Password: <input type="password" name="password"><br>
<input type="submit" value="Accedi">
</form>


Andiamo a vedere il codice della pagina che dovrà gestire l’autenticazione:

<?php
$username= trim($_POST['username']);
$password = trim($_POST['password']);

if(!$username || !$password):

         //riporto alla pagina iniziale se uno dei due campi è vuoto
         header('location: index.php');

else:

        //mi connetto al db
	@require('conndb.inc');
		
	//recupero i dati inseriti
	$username= trim($_POST['username']);
	$password = trim($_POST['password']);
	$password = md5($password);
	
	$sql = ("SELECT Username, Password FROM utenti WHERE Username ='".$username."' AND Password ='".$password."'");
	
	if(@mysql_query($sql)){
	   $result = @mysql_query($sql);
	 
           if(!$result){
		exit('<p>* SQL: <i>\''.$sql.'\'</i> .Errore nella selezione dei dati di accesso: '.mysql_error().'</p>');
		}
        }
	
        $rows = @mysql_fetch_array($result);
      
        session_start();

	$username = $rows['Username'];
	$_SESSION['username'] = $username;
	$PHPSESSID = session_id();
	echo "<SCRIPT>";
	echo "location.href='area.php'";
	echo "</SCRIPT>";
	
endif;

?>

Andiamo ad analizzare questo codice:

  • La riga 05 controlla che tutti i campi siano compilati:
    if(!$username || !$password):
    
  • Se i due campi sono compilati allora recupero i dati ed effettuo un controllo sul database per verificare se l’utente esiste:
    //mi connetto al db
    	@require('conndb.inc');
    		
    	//recupero i dati inseriti
    	$username= trim($_POST['username']);
    	$password = trim($_POST['password']);
    	$password = md5($password);
    	
    	$sql = ("SELECT Username, Password FROM utenti WHERE Username ='".$username."' AND Password ='".$password."'");
    	
    	if(@mysql_query($sql)){
    	   $result = @mysql_query($sql);
    	 
               if(!$result){
    		exit('<p>* SQL: <i>\''.$sql.'\'</i> .Errore nella selezione dei dati di accesso: '.mysql_error().'</p>');
    		}
            }
    	
            $rows = @mysql_fetch_array($result);
    

    Nella seconda parte vedremo in modo più avanzato i vari controlli. In questo caso la verifica dell’utente darà solamente un errore nella selezione dei dati

  • Infine apriamo la sessione impostando i nostri valori e indirizzando l’utente all’area riservata:
    session_start();
    
            $username = $rows['Username'];
    	$_SESSION['username'] = $username;
    	$PHPSESSID = session_id();
    	echo "<SCRIPT>";
    	echo "location.href='area.php'";
    	echo "</SCRIPT>";
    

Per effettuare l’uscita dall’area riservata è buon uso distruggere la sessione corrente:

<?php
session_start();

unset($_SESSION['email']);
session_destroy();  
header("Location: index.php");   
?>

Davide Arduini Arduini

Developer Web in Php, Html, Asp, Css. Esperienza in sviluppo di siti web, pannelli gestionali e applicativi aziendali per uso interno. Conoscenza base dei vari CMS (Joomla, WordPress, etc..)

WebSite


Seguimi su: TwitterFacebookLinkedInPinterestGoogle PlusYouTube

Font Awesome
Posizionamento con Css

Potrebbero interessarti anche

2 thoughts on “Login Php (parte 1 del tutorial)

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *