Me has vuelto a poner exactamente el mismo código de ayer...
Bueno intentare explicarte mediante ejemplos, imagina que tenemos una tabla que se llama valencia, imagina que esta tabla
tiene 4 columnas, nombre_fiesta, pueblo, fecha_inicio y fecha_fin.
ahora imagina que tenemos 4 variables php, las cuales cada una recoge un valor del formulario, llamémoslas:
$nombrePueblo
$nombreFiesta
$fechaInicio
$fechaFin
Pues bien si vas a meter todos los campos en la tabla, debes usar una sentencia tipo:
INSERT INTO valencia VALUES( '$nombrePueblo','$nombreFiesta','$fechaInicio','$fechaFin' );
Con esta sentencia de este tipo, nos obliga a rellenar todos los campos que tiene la tabla.
En cambio, imagina que solo quieres almacenar el pueblo y la fiesta y dejar la fecha para mas adelante,
entonces debes usar una sentencia de este tipo:
INSERT INTO valencia(pueblo,nombre_fiesta) VALUES( '$nombrePueblo','$nombreFiesta');
Fíjate en que la segunda sentencia se especifica las columnas que vamos a meter. Otro ejemplo, imagina que ahora
solo vamos a meter el nombre de la fiesta, la fecha de inicio y la de fin, entonces tendríamos la siguiente sentencia:
INSERT INTO valencia(nombre_fiesta, fecha_inicio,fecha_fin) VALUES( '$nombreFiesta', '$fechaInicio','$fechaFin');
Siguiente cosa: formato de las fechas:
Para insertar fechas en mysql es recomendable usar la función STR_TO_DATE(cadena_fecha, cadena_formato) de mysql. El enlace a la documentación de la función es el siguiente:
http://dev.mysql.com/doc/refman/5.0/en/date-and-time-functions.html#function_str-to-datepor lo cual según lo que he visto tu tienes los 4 campos 2 de ellos son fechas y ademas dices que con un formato de aaaa-mm-dd, pues bien, suponiendo que seguimos con las variables anteriores, tu sentencia para meter en la tabla todos los campos podría ser una de estas dos:
INSERT INTO valencia(nombre_fiesta,pueblo, fecha_inicio,fecha_fin) VALUES( '$nombreFiesta',$nombre_pueblo,STR_TO_DATE('$fechaInicio','%Y-%m-%d'), STR_TO_DATE('$fechaFin','%Y-%m-%d'));
o
INSERT INTO valencia VALUES( '$nombreFiesta',$nombre_pueblo,STR_TO_DATE('$fechaInicio','%Y-%m-%d'), STR_TO_DATE('$fechaFin','%Y-%m-%d'));
la primera le indicamos el orden en que entraran los datos, y en la segunda los datos entraran en el mismo orden en que se crearon los campos en la tabla cuando la creaste.
La verdad que es un tema extenso y se podría hablar durante días de el, yo te recomendaría que siempre que vayas a insertar datos, lo hagas de la forma:
insert into nombre_tabla(lista_de_columnas) values(lista_de_valores)
De esta manera, nunca tendrás la necesidad de recordar el orden de las filas ya que lo impones tu mediante la lista de columnas le vas diciendo en que orden van a ir entrando los datos, intenta montarte el script.php de manera que insertes todos los datos(incluidas fechas), y ya si tienes algún problema nos cuentas. Como te digo, el código que me has pasado es exactamente el mismo de ayer y en teoría te debe funcionar, siempre y cuando quitaras las columnas fecha_inicio y fecha_fin de la tabla.
Bueno eso, intenta pelearte un rato para conseguir insertar todos los valores del formulario en la tabla, y ya si tienes algún problema nos cuentas.