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,