PHP工房トップ

HOME > メールフォームプログラムの項目連結、文字列追加オプションの解説

メールフォームプログラムの項目連結、文字列追加オプションの解説

2014/12/12アップデート分からの機能になりますのでご注意下さい。
2014/12/12以降にダウンロードされたファイルのみ対象です。
以前のバージョンをお使いの方で、この機能を使用されたい場合には、あらためて最新版をダウンロード下さい。

※旧バージョンの場合に以下のような記述を行ってしまうと正常に動作しなくなります。

複数項目の連結

たとえば以下の様な入力欄があった場合、3つの項目を連結できます。
※連結するには特別なルールに沿って記述する必要がありますので十分にご注意下さい。間違えてしまうと送信に不具合が生じます。

電話番号: - -

この3つが連結され、確認画面、及び送信メールでは以下のように表示されます。
【 電話番号 】 03-1234-4567

実際のタグは以下のようになっています。

電話番号:<input size="5" type="text" name="電話番号[][-]" /> - <input size="7" type="text" name="電話番号[][-]" /> - <input size="7" type="text" name="電話番号[][]" />

ポイント

ポイントはname属性の値「電話番号[][-]」の箇所です。わかりにくいかもしれませんが、
[]が2つ後ろについており、2つ目の[]には連結文字列を記述しています。(この場合ハイフン)

実際は入力文字の末尾に連結文字列(この場合ハイフン)を追加するという意味になります。
そのため、入力欄3つ目の「電話番号[][]」は連結文字が書いていませんね。(03-1234-5678-となってしまうため)
また重要なことですが、連結する項目は1つ目の[]も必ず必要で、中身は必ず空にする必要があります。
要するには連結する項目のname属性の値は必ず以下のようにする必要があるということです。

name="○○[][ここに連結文字列を記述]"

※連結する項目は○○部分は同じにする必要があります。

記述ルールはこれだけになります。あとはプログラム側でいい感じにしてくれます。
逆にこの連結機能を使わない項目の場合には今まで通り
name="○○"
として下さい。後ろの[]は付けないで下さい。(チェックボックスを除く)

入力文字の後ろに文字を追加する

たとえば「人数」や「金額」入力箇所では数字が表示されるだけでしたが、後ろに「人」や「円」などが追加可能となりました。

金額:
この入力の後ろに「円」を付けたい場合、以下の様なタグを記述します。

金額:<input size="10" type="text" name="金額[][円]" />

とすれば、確認画面、送信メールでは
【 金額 】 5,000,000円
と表示されます。
※追加文字が「円」が含まれる場合でかつ半角数字のみの場合には自動で3桁毎にカンマが付きます。

要するに name属性の値の後ろに[][]が 付き、この2つ目の[]の中に追加したい文字を指定するだけです。
このあたりの記述ルールは実際には上記連結のルールと全く同じです。

記述例

以下にいくつか例を挙げますのでご参考下さい。
※ソースもコピペOKです。

電話番号(半角) - -
記述タグ

表示:【 電話番号 】 03-1111-2222
郵便番号(半角) -
記述タグ

表示:【 郵便番号 】 136-0071
金額
記述タグ

表示:【 金額 】 5,000円
人数
記述タグ

表示:【 人数 】 10人
日時(半角) 月 日 時 
記述タグ

表示:【 日時 】 10月11日12時50分

フォームパーツはinputタグに限りません。selectやradio、checkboxなどにも使用可能です。

決められたルールで書く必要はありますが、それほど難しいものでもないかと思います。
ただ、あくまでもオプション扱いなので必要に応じてということになります。

サンプルデモ

実際には送信されません。ソースコードをご参考下さい。必要に応じて自由にコピペ下さい。

必須設定などでname属性の値を指定する場合の注意点

ファイル内にも記述していますが、mail.phpの設定箇所でname属性の値を指定する箇所がありますが、
その場合、name属性の値が「name="○○[][]"」 の場合、必ず後ろの[]を取ったものを指定下さい。
要するに「name="日時[][月]"」の場合には「日時」のみ指定するということです。

お気づきの点やございましたら遠慮なくご連絡下さい

十分に動作確認は行っておりますが、リリース直後は未知の不具合が無いとも限りません。
お気づきの点やおかしな点がありましたらどんなことでも遠慮なくご連絡下さい。
お問い合わせはこちらからお願いします


PHPメールフォーム(無料版)

PHPメールフォーム(有料版)

新着情報・更新履歴CMS(無料版)

投票・アンケートシステム(無料版)

テロップCMS(無料版)

写真ギャラリーCMS(無料版)

営業日カレンダーCMS(無料版)

営業日カレンダーCMS(有料版)

カレンダー予約フォーム(無料版)

カレンダー予約フォーム(有料版)

リンク集ページCMS(無料版)

アクセスカウンター(無料版)

ダウンロードカウンター(無料版)

メールフォームの各種カスタマイズならお任せ下さい
業務効率化が可能なPHPオリジナルCMS制作します

役立つかも?なもの

豆知識や役立ち事など

PHPについて

各種情報