[snip] Actually it's quite easy. I've got a similar object to the one you guys described (can't really share it - I'm on salary so technically it belongs to my boss.) Anyhow when I do my table layout, if there's a look-up, I name the field "lookuptable_id" in the DB. In my object, it looks for any field ending in "_id" (or whatever you specify to the object - "_id" is just the default) and it creates a drop-down of the options. The object also takes an array of ignore_fields, hidden_fields (good for ID's on updates), friendlynames (you don't always want to use the fieldname in the database, but anyhow the object replaces underscores and capitalises), and a bunch of other customising array properties with useful defaults. It also detects whether this is an insert or update and knows how to route the action, and has support for file uploads (and customises the enctype of the form for that). So basically you can have a very nice form, customised, with one or two lines of code to draw the form, as long as you design your object and DB well. [/snip] Cool...essentially I am extending what I showed here for the same purpose, multiple table forms. All of the other functions must be extended to handle the data for this, but should all be the same basic model. -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php