Ciao a tutti, allora vi espongo subito il mio problema: ho creato un sito web e questo è lo script per il login all'amministrazione, praticamente all'inizio controlla se esiste una variabile di sessione, se non è cosi appare il form con user e pass che confronta gli input inseriti con quelli di un database. Se coincidono (cioe user e pass esatti), si procede altrimenti Login Errato. Ora il mio problema è: come faccio a far si che, una volta che gli input sono corretti e confermati, ad iniziare una sessione e passare alla pagina appresso? Un grazie di cuore a chi sa aiutarmi, ci tengo davvero tanto.
Codice PHP:
<?php
#######################################################
# Script per il login nell'amministrazione #
#######################################################
if (isset($_SESSION['login'])) { // Se la variabile di sessione è gia stata creata, allora passa direttamente alla pagina successiva
QUI SE LA VARIABILE ESISTE DOPO IL RELOAD, C'E UN REDIRECT
} else { // Altrimenti, se la variabile di sessione non esiste
if (isset($_POST['username']) && isset($_POST['password'])) { // Se i dati del form sono già stati inviati ed esistono
include ("connect.php");
$formuser = $_POST['username']; // Salvo l'admin del form in una variabile
$formpass = $_POST['password']; // Salvo la password del form in una variabile
$accesso = "SELECT Username,Password FROM administrators WHERE Username = '$formuser' AND Password = '$formpass'"; // Intercetto i dati nella tabella MySQL
$result = mysql_query ($accesso, $connection); // Elaboro i risultati
$num_results = mysql_num_rows($result); // Elaboro QUANTE corrispondenze sono state trovate con la query.
if ($num_results == 0) { // Se non ci sono corrispondenze, quindi User e Password NON coincidono
echo 'Login fallito';
} else { // Altrimenti, se User e Password COINCIDONO
session_start(); // QUI LA SESSIONE NON POTRA' MAI ESISTERE PERCHE' CI SONO GIA DEGLI OUTPUT..
echo 'Login effettuato';
}
} else { // Se non sono mai stati inviati dati nel form
echo "Non risulti loggato. E' richiesta l'autenticazione per proseguire.
";
echo "
<form action='msadmin.php' method='POST'>
Username <input type='text' name='username' />
Password <input type='password' name='password' />
<input type='submit' value='Login' />
</form>"; // Mostra il form che rielabora msadmin.php da capo
}
}
?>