Entiende esto, si el codigo se ejecutara...
Código PHP:
<?php
$sql = "INSERT INTO inv_compras (id_producto,id_proveedor,fecha_compra,id_documento,nro_documento,cantidad,costo,id_glosa) values ('{$_POST['id_producto']}','{$_POST['id_proveedor']}','{$_POST['fecha_compra']}','{$_POST['id_documento']}','{$_POST['nro_documento']}','{$_POST['cantidad']}','{$_POST['costo']}','{$_POST['id_glosa']}')";
mysql_query($sql) or die(mysql_error());
echo $sql;
?>
Al menos te apareceria por pantalla
INSERT INTO inv_compras (id_producto,id_proveedor,fecha_compra,id_document o,nro_documento,cantidad,costo,id_glosa) values ('','','','','','','','')
Pero no te está saliendo nada, conclusion.. el codigo no se está ejecutando, por lo menos la parte de echo $sql.
Si el codigo esta dentro de un condicional, verifica que se cumpla su condicion. Coloca echo "algo" en lugares "estrategicos" para saber qu ese ejecuta y que no. Verifica d epaso, no tener desactivado el reporte de errores:
error_reporting(1);