Originariamente inviato da havana24
controllare se esce almeno un record dalla query e quindi far partire la sessione.
forse sarebbe meglio fare cosi':

Codice PHP:
......

   
$q "select * from users 
         where username = '
$username' and password = '$md5pass'";
   
$result mysql_query($q,$conn) or die(mysql_error());
   if(
mysql_num_rows($result) == 1) {
        
$row2 mysql_fetch_assoc($result);
        
session_start();
        
$_SESSION['login'] = "ok";
        
$_SESSION['username'] = $username;  
        
header("Location: index.php");
        } else { 
          echo 
"

<center>[b]LOGIN FALLITO[/b]
Username o Password errata!"
;
        } 
mysql_num_rows() e non mysql_numrows

Se $result fose false denuncerebbe un errore di query e tu riceveresti gia' un warning facendo il mysql_fetch_array()

ma anche poi ... $row2 = mysql_fetch_assoc($result); a che ti servirebbe visto che non utilizzi il result set?