all form processing must be done on the forms action page
in the first instance, you are submitting to another page, this is why the upload doesn't work.
the upload needs to happen on the action page.
so you need to leave the action blank so it submits to itself.
In the second instance, you are uploading the file, but when you go to the other page, the post data no longer exists anymore, that's because the post data only exists while the action page is loading. if you where to check for the post data on the form page, you would see that it exists there.
this is why i suggested putting the file field on the last page, the page that you have the insert behavior
it would work like this:
form1 posts to page2.
page 2 has hidden elements that capture what is sent from page 1.
form2 posts to page page 3.
page 3 has hidden elements to capture the data from page 2 (which also includes the data from page 1)
form 3 includes the file field and posts to itself.
when submitted, form 3 uploads the file, and inserts the data to the database