Functional tests make sure that some function of the system is satisfied. These are integration tests that integrate everything. (Ironically, "functional tests" are almost the opposite of "functional programs", since "functional programs" eschew side-effects wherever possible, but "functional tests" should have side-effects whereas unit, regression, and integration tests should not.
The distinction between an integration test and a functional test is that an integration test just puts together some number of components of the program; a functional test exercises some behavior of the whole, assembled program.