For some reason Joomla core has never natively been able to create custom forms - I'm not sure if this is due to it originally (pre-1.5 releases) allowing non-article content types to sit in the usual database tables that comprise your site, or something else... However, for years there have been multiple extensions floating around that could let you create forms out of basic elements, like text, email and file fields.
The most basic use of such extensions would be to get rid of Joomla's too-simple contact form system. To do just that it seems that today there are a good 4 or 5 extensions sitting in the extensions directory that could help you out, though the more digging you do the more you'll find discrepancies between them. Choosing the right form extension should be done with a balance of features to look for, such as:
- A highly active and focused extension developer,
- A multitude of fields already supported,
- A large user base,
- Development of the extension with long-term focus; if the extension has been created to allow the developer to just create 1 or 2 forms on his/her website, it may not be able to do more in the future (given that their initial need for it was satisfied).
Back in 2007 I mentioned the release of a new extension called Fabrik - after spending some time comparing notes between a bunch of form components just now I am back in love with it! You see, Fabrik takes the approach of forms being essential things for application-building - meaning that with Fabrik, you can create forms to not only email somewhere but store in your database which in turn can be displayed as lists through your site - you you can, for example, use it to build things like a custom library listing of books.
Fabrik was around before last year's CCK-in-joomla copycating< began and is interesting in not replacing Joomla's core article content-type but side-stepping it with a flexible system for handling custom content that supports custom theming and additional plug-in support (yes, you can make your own field types).
Already available fields for forms created with Fabrik include; user details, captcha (with recaptcha!), text areas/fields, file uploads, images, database joins and more (including text displays to annotate fields - for 'help' purpose)...
I highly recommend popping over to http://fabrikar.com and checking Fabrik out... Be sure to also pour through their forums to answer any queries you may have before installing/getting started.

