Forse mi sbaglio, magari quelli un po' più esperti mi correggeranno. Però
Codice PHP:
$id = $riga['id_ser']
messo prima della query, non ha utilità visto che all'apparenza è vuoto, amenochè non sia un parametro che arriva da un altro script. Prima dell'autenticazione hai il form che come action richiama questo script giusto? Ei 2 campi che recuperi sono user e pass, quindi:
controlli che i dati in arrivo dal form siano stati inseriti:
Codice PHP:
if (!isset($_POST['username']) || !isset($POST['password']) || ($_POST['username']== "") || ($_POST['password']==""){
die ('Non hai compilato i campi necessari')}
se passano il primo controllo li recuperi:
Codice PHP:
$Usr = $_POST['utente'];
$Pwd = $_POST['password'];
//bisogna inserire qualche controllo sui caratteri speciali su questi valori.
fatto questo effettui la tua query e passi a esaminare il risultato
Codice PHP:
$query = "SELECT * FROM TblSerr WHERE Nome_utente = '{$Usr}AND Psw = '{$Pwd}";
$Risultato = mysql_query($query, $conn);
if (!$Risultato)
{
die("La tabella selezionata non esiste " . mysql_error());
}
if (mysql_num_rows($Risultato) == 1)
{
//Ricerca utente andata a buon fine
$messaggio .= "Utente trovato login effettuato";
$_SESSION['Id_serr'] = $Risultato['Id_serr'];//non hai una variabile $trovato ma $risultato
$_SESSION['Nome_utente'] = $Risultato['Nome_utente'];
header("Location: Area_personale.php");
exit;
}
else
{
//Ricerca non riuscita
$messaggio = "Utente e/o password errati";
}
}
prova e fammi sapere