Posting Form Data to E-Mail post2email.php Advanced Features
Comment:post2email.acgi, which runs natively on the classic MacOS, has reached end-of-life. It has been replaced with post2email.php, which runs natively on Unix systems, such as MacOSX and MacOSX Server. New features introduced with post2email.php are noted in green.
If you use the sample code provided on the main post2email page, your recipient email address is fully exposed to nasty robots which scour the Web for addresses to spam. Here is a simple way to declare the recipient in a spam-proof manner:
The (shift-2) will be replaced with @ and the (dot) will be replaced with "." (a lone period). (period) will also be converted to ".". In the PHP version, (at) will be replaced with @.
For the second level of 'bot-spoofing, if the string "_p2em_" is included anywhere in the mangled email address, it will be removed. This is actually done before conversion of (shift-2), (dot), (at), and (period).
For the third level, you can define your own string swap as follows:
The string defined in helper_spamblockfrom will be replaced with the string in helper_spamblockto. Using all these techniques, the code looks like this:
I very much doubt any robots will be able to deduce the actual email address with all these obfuscations! Of course, all these features are optional. Top
Database Integration
If you wish, you may have the output sent to a MySQL database viewable (and editable) thru a Web Page interface (Safari from Apple strongly recommended - seriously, and not because I am a Mac nut.) The output can be configured to be either emailed, archived, or both, controllable thru custom form fields which will be made available to premium customers. Top
FormMemory Compatibility
There is a potential incompatibility between LinkedResources' post2email and FormMemory tools. The problem is that a FormMemory archive can overwrite the post2email admin fields. The workaround is to change the names of the admin fields to helper_adminfieldname. For example, instead of using a recipient field, name it helper_recipient. If you define a field named helper_recipient with a non-blank value, then only fields which begin with "helper_" will be recognized as admin fields. Here then is the sample form, now both FormMemory savvy and spam proof: