Puedes usar un campo DATETIME en tu estructura SQL de tu tabla ...
Y lo de la fecha automatica (fecha y hora) .. puedes usar NOW() de Mysql en la misma consulta que hagas de INSERT o UPDATE si lo necesitas ... Algo tipo:
INSERT ....... VALUES('$campo1',NOW(),'$campo2') ....
mas info:
www.mysql.com/doc (el manual de Mysql .. busca el capítulo de tipos de datos y el de funciones para tratar fechas .. pues mas adelante te hará falta un DATE_FORMAT() para obtener la fecha DATETIME con tu formato que definas .. Los DATETIME se guardan: aaaa/dd/mm hh:mm:ss y tu seguro q lo quieres presentar como dd/mm/aaa .. u otro formato .. )
Tambien puedes usar un campo INT y guardar la fecha en formato TIMESTAMP .. con eso obtienes los segundos transcuridos desde el nosecuantos del '70 hasta la fecha. Para obtener la fecha/hora actual en formato TIMESTAMP via PHP deberias usar time() ... Y para darle formato date() (todo esto de PHP) ..
Personalmente te recomiendo el método "SQL" .. pero sobre gustos no hay nada escrito ...
Un saludo,