In your original post you mention that you cannot use sessions for this because there are "multiple text-type columns." A session can store any number of variables. If you can enter something in a form field, it can be stored in a session variable.
How are you passing the user identifying information between the pages of the form now, session or hidden field?
If you don't want to use session variables, I would say that your proposed method of a temporary table is your best bet. It will allow the same code to work for new records and editing existing records.
Here is a link that might help you out, it is a script that will automatically create hidden fields from any variables entered on a previous form page -
http://codewalkers.com/tutorials.php?show=28