Bom de antemão
NÃO TEM UMA MÁGICA PRA PEGAR A HORA DO USUÁRIO,
Existem aquelas 'adaptações funcionáveis' que funcionam mesmo

Então vamos lá...
Crie uma função como esta abaixo:
<?
function dataAtual(){
ini_set('date.timezone','America/SAO_PAULO');
return date("Y-m-d H:i:s");
}
?>
Depois é só chamá-la na hora de inserir ou exibir qualquer coisa desse jeito:
<?
dataAtual()
?>
explicando...
Isso faz com que o date pegue a data de acordo com o fuso horário de São Paulo!

(ah mas quando tiver horário de verão, meu estado não tem! Aí vc vi ter que alterar a data colocando -1 no h.