Teddy's right. It has to do with global variables. Originally your method would have worked - because PHP automatically made all of your $_REQUEST, $_GET, $_POST etc items into normal variables.
Now you actually have to point to the array. (instead of just $PHP_SELF to get the name of your script - you need $_SERVER['PHP_SELF']).
As you've passed the username as a GET variable (in the URL - as opposed to a POST form) - you can refer to it as $_GET['username']. The $_GET is more specific (as you know the variable is being taken from the URL).