Como ya te dijeron un error por parte de PHP es que no finalizas las sentencias, además en tu segunda línea no estás cerrando la cadena (te faltaría una comilla a el final).
Lo que estás intentando podría decirse que esta bien; intentas colocar la función en una variable y pasarsela a la query... el error que tienes es que las funciones de SQL no deben estar entrecomilladas... si corrijieras los errores que se te mencionaron tendrías al final una query de este tipo:
Código:
Insert into prueba (fecha) values("NOW()")
por estar entre comillas "NOW()" lo estás pasando como texto, no como función por eso no te sirve e inserta puros 0's --valor por defecto--. Entonces lo correcto sería:
Código PHP:
// tengo mi variable
$fecha = "NOW()"; // igual decir que lo correcto es usar las funciones con mayúsculas
$insert = "Insert into prueba (fecha) values($fecha)"; // ya no queda entre comillas
Cierto que igual puedes sacar el valor de la fecha actual con PHP y la función date(), pero es
más óptimo usar puro SQL para ello. Igual decir que para un campo DATE (YYYY-MM-DD) lo indicado es usar la funcón CURDATE() que te devuelve presisamente solo la fecha, al contrario de NOW() que devuelve "el momento" (YYYY-MM-DD hh:mm:ss).
http://dev.mysql.com/doc/mysql/en/da...functions.html http://www.mysql-hispano.org/page.php?id=31&pag=6