Il php dopo <? serve per evitare eventuali problemi con hosting non sotto il tuo controllo.
Non è la soluzione al tuo problema.

Per quello credo che, come ti ha detto Filippo, tu debba usare $_GET o $_POST e non le register_globals che sono oramai retaggi del passato.