session_register(); fonksiyonu artık rafa kaldırıldı artık bu şekilde kullanılması önerilmiyor kesinlikle. Php'nin yeni versiyonlarında
süper global dizisiyle kullanman gerekiyor
$_SESSION['username'] = @mysql_result($sql,0,"username");
Aklıma gelen bir diger sorun sanırım php.ini dosyasındaki register_globals degişkeni kapalı olabilir senin sunucuda.
formlardan gelen verileride yine superglobal dizisiyle almak gerekiyor
$_POST['username] şeklinde