<?php
// Includo la connessione al database
require('config.php');




// Se il modulo viene inviato...
if(isset($_POST['login']))
{


// Dati Inviati dal modulo
$user = (isset($_POST['user'])) ? trim($_POST['user']) : ''; // Metto nella variabile 'user' il dato inviato dal modulo, se non viene inviato dò di default ''
$pass = (isset($_POST['pass'])) ? trim($_POST['pass']) : ''; // Metto nella variabile 'pass' il dato inviato dal modulo, se non viene inviato dò di default ''
$Categoria = (isset($_POST['Categoria'])) ? trim($_POST['Categoria']) : '';


// Filtro i dati inviati se i magic_quotes del server sono disabilitati per motivi di sicurezza
if (!get_magic_quotes_gpc()) {
$user = addslashes($user);
$pass = addslashes($pass);
$Categoria = addslashes($Categoria);
}


// Crypto la password e la confronto con quella nel database
$pass = md5($pass);


// Controllo l'utente esiste
$query = mysql_query("SELECT user FROM utenti WHERE user = '$user' AND pass = '$pass' LIMIT 1");


// Se ha trovato un record
if(mysql_num_rows($query) == 1)
{
// prelevo l'id dal database
$login = mysql_fetch_array($query);


// Creo una variabile di sessione
$_SESSION['login'] = $login['user'];


// reindirizzo l'utente
if ($Categoria == 'A') {
header('Location: registrati.php');
exit;
} elseif ($Categoria == 'B') {
header('Location: privata.php');
exit;
}
}
// se non esiste da l'errore
else
die('Nome Utente o Password errati');
}
?>

Ho provato in questo modo, ma lo script non dà segni di vita.