De nada, para eso es esta web :D.
Para insertar la fecha/hora automáticamente, tienes que modificar la base de datos (si es necesario) y cambiar el tipo de dato de fecha/hora. Ejecuta la siguiente consulta SQL:
ALTER TABLE `nombre_tabla` CHANGE `nombre_tabla.nombre_columna` `nombre_tabla.repite_nombre_columna` TIMESTAMP DEFAULT CURRENT_TIMESTAMP;
Donde nombre_tabla es el nombre de la tabla dentro de MySQL, nombre_columna es el nombre de la columna actual que contiene la fecha/hora y repite_nombre_columna debe ser el mismo nombre de nombre_columna (en realidad puede ser otro, pero para conservar los nombres originales, deja el nombre original). Lo anterior le dice a MySQL: "Altera la tabla 'tabla' cambiando la columna 'columna': dale un tipo TIMESTAMP y por defecto (DEFAULT, si es que no se ingresa nada) déjale la hora y fecha actual".
Eso resuelve el problema de la fecha. Para comprobar que se ingresó algo debe utilizar las funciones
isset( $variable ) y/o
empty( $variable ). ¿Cómo haces para llenar la tabla dinámicamente? ¿Con Ajax, jQuery/Ajax?. Lo anterior quedaría así:
<?php
$comentario = $_POST['comentario'];
$output = '';
// strlen( $var ) devuelve el largo de un string/cadena.
if( isset( $comentario ) && strlen( $comentario ) > X ) { // Si $comentario es distinto de NULL y el largo de la cadena es mayor a X caracteres hará lo siguiente
$conexion = mysql_connect( 'host', 'nombre', 'pass' );
if( ! $conexion ) {
$output .= "<p>Ocurrió un error al establecer la conexión:<br />" . mysql_error() . "</p>";
} else {
if( ! mysql_select_db( 'base_datos', $conexion ) ) {
$output .= "<p>Ocurrió un error al seleccionar la base de datos:<br />" . mysql_error( $conexion ) . "</p>";
} else {
$query = "INSERT INTO tabla (comentario) VALUES ('$comentario')"; // La fecha se actualizará automáticamente
$result = mysql_query( $query );
$filas_insertadas = mysql_affected_rows( $conexion );
if( $filas_insertadas > 0 ) { // Si se insertó al menos una fila
$output .= "<p>La información se guardó sin problemas.</p>";
} else {
$output .= "<p>Ocurrió un error al guardar la información:<br />" . mysql_error( $conexion ) . "</p>";
}
mysql_free_result( $result ); // Liberamos los resultados
}
mysql_close( $conexion ); // Se cierra la conexión
}
} else { // De lo contrario mostrará lo siguiente
$output .= "<p>El largo del comentario es muy corto. Deben ser mínimo X caracteres.</p>";
}
echo $output; // Muestra el resultado (bueno o malo)
?>
Ahora solo queda mostrar los resultados:
<?php
$conexion = mysql_connect( 'host', 'nombre', 'pass' );
$output = '';
if( ! $conexion ) {
$output .= "<p>Ocurrió un error al establecer la conexión:<br />" . mysql_error() . "</p>";
} else {
if( ! mysql_select_db( 'base_datos', $conexion ) ) {
$output .= "<p>Ocurrió un error al seleccionar la base de datos:<br />" . mysql_error( $conexion ) . "</p>";
} else {
$query = "SELECT * FROM tabla"; // La fecha se actualizará automáticamente
$result = mysql_query( $query );
if( $result ) {
// Aquí muestras los resultados:
} else {
echo "<p>Aún no hay comentarios publicados.</p>";
}
mysql_free_result( $result ); // Liberamos los resultados
}
mysql_close( $conexion ); // Se cierra la conexión
}
echo $output;
?>
Espero que te sirva, saludos :D.