Some good points, let's talk about it.
register_globals is the setting that allows $foo as opposed to track_vars which allows variables such as $HTTP_GET_VARS['foo'] -- track_vars is most likely on and is ALWAYS on after 4.0.3+ so it's pretty safe to depend on but worth checking.
As lyon suggests, phpinfo() will give you information on your settings, mind them.
Regarding Lyons code, that'll of course work if track_vars are on, and if register_globals is off and another way to accomplish that is :
extract($HTTP_GET_VARS);
Which turns $HTTP_GET_VARS['foo'] into $foo. Whether or not it's necessary only you know. I personally don't do it that often, maybe in a function.
Places to read :
http://www.php.net/manual/configuration.php#ini.register-globals
http://www.php.net/manual/configuration.php#ini.track-vars
And while you're at it, read about magic_quotes_gpc (mmm, magic quotes) :
http://www.php.net/manual/configuration.php#ini.magic-quotes-gpc
This is good too :
http://www.php.net/manual/language.variables.external.php
http://www.php.net/manual/language.variables.predefined.php