ようこそ ゲスト さん、新規登録(無料)して気になる疑問を解決しませんか?

質問

質問者:impeach 送信側が必須項目を選択できるメールフォーム
困り度:
  • すぐに回答を!
メールフォームの送信条件に「必須項目」がありますよね?
メールアドレスや電話番号がそうだと思います。

その必須項目は初期段階で設定されているじゃないですか?

この必須項目を送信側が選択出来るフリーのメールフォームCGIがあれば教えて頂きたいのですが・・・

例えば「メールアドレスは教えても良いけど電話番号は教えられない人」と「メールアドレスは教えたくないけど電話番号は教えてもいい人」

まぁ必須項目を無くして、一文「いずれかを入力してください」と入れておけば良いだけかも知れませんが・・・

よろしくお願い致します。
質問投稿日時:08/05/02 12:44
質問番号:3992037
この質問に対する回答は締め切られました。
最新から表示回答順に表示

回答

 

回答者:abril > この必須項目を送信側が選択出来るフリーのメールフォームCGI

…と仰っているのは、

1. クライアント側(送信側)で画面上から「どの項目を必須にするか」を(わざわざ)任意で選ばせる。
2. 入力させ、仮にそのユーザ自身が必須として設定した項目が未入力だったらエラートラップに引っかかる。
3. 2の段階がクリアになったら送信される。

という様なイメージですか?もしそうであれば、単純に考えるとちょっと意味不明な仕様だと思いますが。
こういう仕様を「敢えて」一から作成しようとすれば不可能ではないとは思いますが、わざわざそれをするメリットというのが見当たりません。

> 例えば「メールアドレスは教えても良いけど電話番号は教えられない人」と「メールアドレスは教えたくないけど電話番号は教えてもいい人」

上記の様な場合は通常はスクリプト側(つまりクライアント側ではなく、サーバに設置する側)で、予め1つのフィールドに対してではなく複数のフィールドに対して条件分岐をさせることで対応しておくでしょう。つまり、項目A or 項目B or 項目Cの内、いずれか1つ以上のデータが入力/選択されていなければNG(送信できない)、というエラートラップを設定しておくという事です。

そういう仕様でなければ結局、

> まぁ必須項目を無くして、一文「いずれかを入力してください」と入れておけば良いだけかも知れませんが・・・

となってしまい、場合によっては自分が(最低限)必要としている情報を含まないデータを受け取る事になるかもしれないからです。

ですので、これらの理由により、

> 私自身、CGI等の知識が皆無なものですから、フリーソフトで対応しないと設置できないのです。
> できますれば、スクリプトを「書く」よりも、既存のフリーソフトがあればいいなと思っています。

と仰っていますが、ご希望の様な仕様を簡単にカスタマイズできる様な既存のスクリプトというのはちょっと望み薄ではないかと。
一番多く提供されているのは、やはり単一の項目毎に対してどれを必須にするかという事を設置する側が任意で決めておける、という仕様のスクリプトでしょう。どうしてもご希望の様な仕様にしたければ、ANo.2の回答者様の仰る様な解決策しかないと思いますよ。
種類:アドバイス
どんな人:経験者
自信:参考意見
回答日時:08/05/02 15:29
回答番号:No.3
この回答へのお礼ご回答誠にありがとうございます。
no,2(Suzi様)のおっしゃる通り、チェックボックスで対応しようと思っています。

>こういう仕様を「敢えて」一から作成しようとすれば不可能ではないとは思いますが、わざわざそれをするメリットというのが見当たりません。

ですよね・・スミマセン。

上記の内容はとても参考になりました。
ありがとうございました。

回答

 

回答者:Suzi 大変失礼致しました。

 最初のご質問に戻って、必須項目を送信者が選択できる表示とすれば、該当項目ごとにチェックボックス等があり、それを送信者がチェックしたら必須項目になる仕様だと思います。

 ・・というフリーのソフトは、私の狭い見聞からでは見た事も聞いた事もありません。

 このご質問の解決における最短距離は、簡易的なフリーcgi/PHPを、作った人、もしくは自分か詳しい人に部分改造してもらうことと思われます。

 お役に立てそうにない回答にて失礼しました。
種類:回答
どんな人:経験者
自信:参考意見
回答日時:08/05/02 15:01
回答番号:No.2
この回答へのお礼お忙しいところ済みません。

該当項目ごとにチェックボックスを設ける。
これが一番ベストでしょうね。

実は先ほどの回答を投稿し終わったあとに、「ふっ」と思いつきました。
それから、この関連のフリーCGIも特別見当たりませんでした。

いま、HTMLを作り直しています。
素人質問に対応して下さり誠にありがとうございました。

回答

 

回答者:Suzi  それら必須項目は、初期段階で設定されている訳ではありません。
 メールフォームを作成(Perl/PHP)する段階で、必須の場合は、その項目が空欄だと書き込むように促したりするエラーなどを表示させるものです。

 よってフリーソフトのはメールアドレスや電話番号が未記入でも送信できるのが多いと思いました。
 送信者に選択させるのは、いずれかが入力されていれば送信、というスクリプトを記さなければならないと思います。
 入力されたモノが正しいメルアド、または電話番号であるかどうかのチェックは別な話ですが。

 的をハズしていたら済みませんです。
種類:回答
どんな人:経験者
自信:参考意見
回答日時:08/05/02 13:21
回答番号:No.1
この回答へのお礼早速の回答ありがとうございます。
初期段階>すみません。設置時に設定しますので、初期段階ではないですよね。

私自身、CGI等の知識が皆無なものですから、フリーソフトで対応しないと設置できないのです。

できますれば、スクリプトを「書く」よりも、既存のフリーソフトがあればいいなと思っています。

引き続きよろしくお願い致します。
 
最新から表示回答順に表示