I've just done something similar recently and the way I managed to get around it was to create a two stage insert / update process.
Page One (say form.php for example)
The user sees the form as normal and the information. The form is then set to post to the next form which is where out insert behaviour sits. We will call this page process form.php
Page Two (process form.php)
First we insert a standard dreamweaver recordset that pulls back the category record filtered by the POST value of the drop down list in the form.
We then run the WA Data Assist Insert behaviour that populates the database entries. Some entries will pick up their POST values from the form, where as the category field will pick up its value (say category name) from the recordset that was filtered by the forms POST variable.
Does that make sense? There may be a more efficient way to do it but this works for me.
Cheers
Ian