Creating a custom data interface simply means writing a page that has forms to enter stuff. If you get into it more, then you can go down the track of rigorous validation, querying multiple tables and doing complex calculations before rendering, however, this is probably the high-end use of a custom data interface. Most people would benefit from having a simple entry form where details can be added to a page (or table) without logging into the manager (for example).
The process usually involves:
- user access,
- entry forms,
- validation of data,
- manipulation of data,
- inserting data to tables,
- storage of data in tables,
- retrival of data from tables,
- display of data and using markup,
- editing data (back to user access and entry forms).
So if you have ever wanted to get info into a site (but didn't want to let users loose in the manager) and were't sure how to do it, that is what a custom data interface and associated techniques are for.
I have used them in zcalendar, etoBasket for PayPal, front-end file manager, easyPoll, etoComment, etoGalEditFields, membership_validator, Plaincart, Report abuse link, shoutbox and UploadForm and extensively in my bookshop. I know Ralph has used them in invoice and asset tracking systems (as per his tutorials on his slyip site).
What ways do you think you may use a custom data interface for on your site? What is stopping you from having done it yesterday?