Uma coisinha que eu sempre esqueço no PHP é que a partir da versão 4.2 a variável de configuração register_globals vem com o valor OFF por padrão. Para entender no que isso implica leva em conta o seguinte exemplo:
Vamos pegar por exemplo o endereço http://servidor/?t=oi. Antes, para tratar a variável a bastava fazer um script assim:
<?
echo $t;
?>
Com a desativação das variáveis globais agora é necessário especificar a origem. No exemplo acima o valor da variável t é passado usando o método get, de forma que a gente usa o array _GET:
<?
echo $_GET[\’t\’];
?>
O problema que eu vejo nesse tipo de coisa é que, durante a etapa de desenvolvimento, eu costumo usar o método GET para ver se as variáveis estão sendo repassadas de forma correta e, depois do script estar funcionando como desejado, passo a usar o método POST, para que os dados não fiquem registrados no arquivo de log do Apache. Assim, ter que ficar mudando de _GET para _POST é chato pra burro. Uma solução é adotar algo assim:
<?
$t = $_GET[\’t\’].$_POST[\’t\’];
echo $t;
?>
Afinal, usar o dois métodos GET e POST ao mesmo tempo é algo meio improvável (há como, mas digamos que é algo que não é para ser feito em casa), de forma que sempre um dos valores será nulo. Algo me diz que essa não é a solução mais elegante, e que deve ter algo melhor, mas por hora isso supre as minhas necessidades…