I am curious why you have to use two pages. In .NET, we often use on page and maybe transfer to a status page (I personally, normally include the status page, processing and data entry all on the same page and only enable the segments of the page I need at the moment). You would not want to use this code on a production server as you would be wide open for hacks. You never want to build a query string by just adding variables together. This allows a hacker to run SQL Injection attacks and you and lays your database and possibly web site wide open. Just search Microsoft for "SQL Injection" and you should find quite a bit of information. You will want to use parameters on the SQL Command. In your code it appears you are trying to capture and uploaded file. If you are redirecting to this page, that value will not be there. You also need to include your exact redirect code to make sure there is no errors in that. One other thought is that you might want to try Server.Transfer() instead of redirect. Redirect actually goes back to the browser and the browser then goes to the next page. If you use a Server.Transfer, it will simply output your new page and the client browser will not even know it is a different page. This should keep your parameters to the page to which you transfer. The transfer however, cannot take additional parameters, the second page will have the exact parameters your first page had. If you wish to provide additional parameters, you can pass them in the HttpContext.Current.Items["MyValue"] (use just like a session or application store. Rocky <>< www.HintsAndTips.com - Now with "Recommendation" postings www.JokesTricksAndStuff.com www.MyQuickPoll.com - Now with RSS Feed and Prizes www.GotTheAnswerToSpam.com - Again :)