Allora, il problema potrebbe essere dovuto all'impostazione
register_globals
di php.ini impostata su off nel server dove il codice non ti funziona.

Questa direttiva se impostata su on consente di riferirsi in PHP alle variabili inviate da un form HTML con queste le sintassi
$campo
$_POST['campo']

Se invece impostata su off (come lo è di default sulle nuove versioni di PHP) si possono usare le variabili post solo con la seconda sintassi.

Se ci pensi ciò è più giusto perchè se hai uno script con molte variabili di cui una che hai chiamato pippo e un form che invia un post che si chiama pippo, tali variabili vanno in conflitto dato che ci si accede sempre con $pippo (tra l'altro non ricordo quale abbia precedenza :master: ).

Spero di aver risolto il tuo problema