FileMaker and Web Integration
Sometimes it’s really useful to be able to integrate your FileMaker database to your website, for instance you might want to:
- Update your website’s stock list automatically
- Have orders from your website go straight into your stock control database
- Deal with enquiries more efficiently by having them create a record in your order management system
- Update content on your website from your database, such as images, news or products
- Manage your mailing list from your FileMaker system.
All of this can be achieved simply and automatically, with the right knowhow. Broadly there are 3 ways of exchanging data between your website and FileMaker:
- ‘Push’ -> Writing data into FileMaker using a scripting language such as PHP
- ‘Pull’ -> Importing data into FileMaker from an ODBC compliant database such as MySQL, MSSQL or Oracle or writing it into a database via ESS
- FTP -> Downloading or Uploading data from a website using a plugin, such as 360Works excellent FTPeak.
You can also automatically re-size images and format content for the web by inserting HTML tags, with a few script steps.
We’ve used all 3 methods, sometimes in combination, to achieve the desired results. For ‘Push’ we’ve used the open source FX and FileMaker’s built-in PHP Libraries. FX used to have the edge over the built-in alternative, however in recent years FileMaker’s offering has matured into a full featured and stable platform for development, so we’d definitely recommend you use that, given the choice. This is our preferred option for writing data into FM.
For ‘Pull’ there are usually two options: ‘Import’ and ‘ESS’. Some ODBC drivers only support the ‘Import’ option, this means that you can bring in data from external sources using the
Import script step, but you can’t view the live data in real time. ESS is FileMaker’s method of displaying and editing remotely sourced data as if it were stored in FileMaker itself. This isn’t supported for all ODBC sources however, and is dependent on the ODBC drive you use. Once connected FileMaker creates a ‘shadow table’ which looks like a table of FileMaker fields, but in fact is a live connection to data stored elsewhere. You can both display and edit data in these fields, as if they were FileMaker native ones - as long as the account you have to access the data has the correct permissions.
FTP is often useful for transferring images, as it didn’t used to be possible via the other methods which can’t transfer binary data. However as FileMaker can natively base64 encode binary data now, it is possible to use ESS to move files or images by encoding them first.
I hope you’ve found this article useful, and if you’d like some help integrating (or even building) your hybrid web/FileMaker solution, don’t be afraid to get in touch!