scusa ma il campo password in database si chiama pwd o password?


Codice PHP:
while($info mysql_fetch_array$check ))
{
$_POST['psw'] = stripslashes($_POST['psw']);
$info['password'] = stripslashes($info['password']);
$_POST['psw'] = md5($_POST['psw']);


if (
$_POST['psw'] != $info['psw']) {
die(
'password sbagliata...');

questa procedura è concettualmente sbagliata e secondo me fallisce perchè hai diversi user uguali con password diverse nel database...

il resultset che seleziona il record con relativo all'user inserito dovrebbe tornare 0 o 1 record.
se torna zero significa che non esiste, come hai giustamente scritto tu, se torna 1 non ha senso fare un while ti basta fare $info=mysql_fetch_array( $check ); senza while