Tienes que imprimir el error que envía mysqli para saber que esta mal...
Código PHP:
Ver original//tu código....
$ins = $mysqli->query("insert into productos (id,nombre,descripcion,rubro,proveedor,costo,
pre_may,pre_det,activo,userid,fecha) values('','$n','$d','$r','$p','$c','$m','$dt','1','1')");
if ($ins){
Echo "Registro Agregado con exito !!";
}
else{
echo "Error al Agregar".$mysqli->error."<br>";
}
//mas código....
Por otro lado, desperdicias por completo mysqli al realizar las consultas como lo haces, ya que haces por completo inseguro tu sistema cuando mysqli implemente por default sistemas de segurida que evitar inyección SQL pero por la forma en que lo utilizas lo desperdicias, para eso existe el método prepare() y bind_param() para asignar variables externas a la sentencia SQL y evitar inyección SQL...