its not broken, its just the new php 4.2.0 setting, register_globals is off, so you must use superglobals.
$POST[]: a form variable
$GET[]: a url variable
$REQUEST[]: a form or url variable
$SERVER[]: a server variable
$ENV[]: an enviorment variable
$COOKIE[]: a cookie variable
$SESSION[]: a session variable
$FILES[]: a file variable
these arrays are always global inside or outside of a function. So if you wanted to print out the form variable 'formvar' you'd do
<?php
print $POST['formvar'];
print $POST["formvar"]; // you can use double-quotes too
?>
all the same rules apply with superglobals as with arrays