やりたかったこと
プログラミングが得意でないデザイナー・コーダーさんにもフォーム実装ができるようになってほしくて、いくつか探しました。
#おすすめのスクリプト3選
##1. Microengine
Microengine メールフォーム
http://microengine.jp/mailform/
バリデーション(入力チェック)からキャプチャ認証、メール送信まで一通りなんでもできるフォームスクリプトです。マニュアルが整備されており、読めばすぐに使えます。
主な特長
1.無料。商用利用でも無料。広告なし。~~リンクバック不要!~~無料時はリンクバック必須、購入することでリンクバックの削除が行えるようになりました。
2.静的HTMLで作成した入力画面、確認画面、送信完了画面をそのまま使える。
3.確認画面・自動応答メール・SMTP送信・CAPTCHA機能などを搭載。
4.大文字・小文字、全角・半角、カタカナ・ひらがな等の入力文字列を変換できる。
5.レンタルサーバーで動作させやすいPHPスクリプト。
##2. PHP工房
PHP工房 PHP多機能メールフォーム フリー(無料)版
http://www.php-factory.net/mail/01.php
PHP工房さんが提供しているメールスクリプトです。Microengine に比べると非常にシンプルです。html と php の合わせて2つのファイルだけで構成されています。
無料版では、最低限の機能に限定されています。
メールアドレスの入力チェックは付いていますが、その他(例えば電話番号など)のチェックをしたい場合は、カスタマイズが必要になります。
あらかじめshift-jis, UTF-8, EUC-JP版の3つが用意されているのは嬉しい。
詳細なマニュアルはありませんが、ソースコード(mail.php)のコメントでだいたい使い方が分かります。
##3. Creasty
軽量でスタイリッシュな PHP フォームバリデーションライブラリ
http://www.creasty.com/blog/stylish-php-form-validation-library
上2つに比べると、若干ハードルは高そうです。
ただ、バリデーションの拡張性は高そうで、jQueryなどでカスタマイズできる人にはうってつけかもしれません。
特徴
オブジェクト指向
チェーンメソッドを使った jQuery のような簡単なシンタックス
Ajax 対応
自動返信メール機能
CSRF 対策として nonce 機能
スパム対策として CAPTCHA 対応
バリデーションのルールとフォームの HTML 生成のロジックを分離
フォームの HTML をルールを元に自動生成
バリデーション用のフィルターを拡張できる
#どれがいいの?
一通りの機能を手軽に使いたいなら1、シンプルで最低限の問合せフォームでよいのなら2、拡張性も求めたいのであれば3、といったところではないでしょうか。
他にもおすすめのスクリプトがあれば、ぜひ教えてください。