Hola,
Siempre que tengas un problema con un consulta SQL usa mysql_error() (
www.php.net/mysql_error):
Código PHP:
$post_noticia = "INSERT INTO noticias (autor,titulo,fecha,contenido) VALUES ('$autor','$titulo','$fecha','$contenido')";
mysql_query($post_noticia) or die("Error $post_noticia <br>MySQL dice: ".mysql_error());
Esto te mostrar la consulta que se intenta ejecutar y el mensaje de error de MySQL en caso que se produzca el error en la MySQL.
Aunque, ahora que lo veo, el error puede ser de HTML:
<td colspan='2' align='right'><input name='post' type='button' value='Enviar'> </td>
Que yo recuerde, los botones tipo button no envian automaticamente los formularios (neesitan un onclick). Los botones de envio de formularios son de type='submit'
<td colspan='2' align='right'><input name='post' type='submit' value='Enviar'> </td>
De todas formas, ten en cuenta lo del mysql_error(). Es mejor ver el mensaje de error que intentar adivinar por el codigo.
Saludos.