En lo personal creo que es mejor y más seguro manejar la fecha y la hora del lado del servidor que del lado del cliente.
Te recomendaría dos opciones:
1: Usar las funciones de MySQL para fecha y hora
Si tienes un campo 'Fecha' tipo DATE y un campo 'Hora' tipo Time utiliza las funciones CURDATE() y CURTIME():
insert into 'Mi_Tabla' set Nombre='Perengano',Comentario='Este es mi comentario',Fecha=CURDATE() , Hora=CURTIME();
Si el campo que ocupas es DATETIME entonces debera usar algo como:
insert into 'Mi_Tabla' set Nombre='Perengano',Comentario='Este es mi comentario',FechaHora=NOW();
Tip: prueba las siguiente query en tu base de datos para que te des cuenta lo que te regresan:
select CURDATE();
select CURTIME();
select NOW();
2.- Olvidate de la fecha y hora y dejale el trabajo a MySQL.
Define un campo de tipo TIMESTAMP (la fecha y hora se guarda como un numero que es el equivalente a la suma de los segundos transcurridos desde el primero de enero de 1970 a a fecha, tambien se le conoce como UNIX_TIMESTAMP).
Cuando crees la tabla definele como valor por default el timestamp actual:
CREATE TABLE Mi_Tabla (Nombre Varchar(100),Comentario VARCHAR(255),Fecha_Hora TIMESTAMP DEFAULT CURRENT_TIMESTAMP);
y cuando insertes no tomes en cuenta ese campo, pues MySQL automaticamente le va a insertar el TIMESTAMP actual:
insert into 'Mi_Tabla' set Nombre='Perengano',Comentario='Este es mi comentario';
Si te preocupa como puedes recuperar la fecha y hora en un formato que puedas entender usa la funcion de php date, le pasas como argumento el formato en el que quieras que te de la Fecha y como segundo parametro el timestamp :
$fecha=date("d/m/Y H:i:s",$timestamp);
Fecha sera algo como
09/10/2008 19:56:00
Saludos espero te resuelva tus dudas.