ラウンジ(兼FAQ掲示板)

hyper_mailについて教えてください
過去ログ NO.1120684324
□ sato [2005年06月24日17時07分]
CGI初心者です。
hyper_mailを使わせていただきたいのですが、自分で追加した項目(アンダーバーをname値の始めに付け加えて、MAIL内容に記録されるように作成しています)を必須項目にするにはどうしたらいいのでしょうか?
□ NXer [2005年06月28日10時25分]

はじめまして。NXerです。

>必須項目にするには

追加フォームを一つとして、それだけを必須化できるか
当方のローカルサーバーで試してみました。
そちらでも同じ結果になるか、お試しいただければ
うれしいです。
(スクリプトの説明は、暇な時適当に読んでください。)

----------------------------ただし、例はURLとします
# ■ 追加フォームの設定(任意の入力フォームを追加できます)
# ("フォームの表題;タイプ;フォームの名前;フォームサイズ;初期値")の形式で
好きなだけ設定
@sub_input = (
"HPアドレス;text;URL;50;", # この場合(HPアドレス <input type='text' name='URL' value=''> )となる
------------------------------------

□1-- 変更点最後のvalue値↓を省略--------
"HPアドレス;text;URL;50;",
----------------------------
要点は、追加入力フォームが空白である、ということを未記入の判断材料
するために初期値として"http://"などの文字列を含まないようにします。
「;」の後に何も入れないで、すぐ「"」、「,」です。

□2--------------挿入は 262行目。未編集なので行番号はかなりずれます。
261 #■ 追加フォームの'URL'の値が未記入時警告表示
if (!$option{'URL'}){ $er = "$er■ 追加入力欄<br>";}
if ($er) { &error("$er<br>が未記入です。"); }  #既存スクリプト
-------------------------------------------------

************************当方のメモ(読み飛ばしてください)
193 $option{$name} = $value;
---------------------------
$optionとは追加の選択項目、連想配列を使います{ }でくくります。
そのキーは、初期設定部の'URL'です。値は、必須で入力すれば
http://www.aaa.co.jpなどです。

入力を忘れると、値はなく、(!$option{'URL'}) カッコ内が真でない、が
成立して警告文を表示します。
***************************

参考までに、詳細は、不明ですが、勝手に想像して書きます。
もし趣味が必須入力項目なら、フォーム表題を換えたりする上に
'URL'を'HOBBY'に換えます。警告文も「趣味欄」など適切な語句
表示になるようにファインチューニング(微調整)してください。
よい作品になりますように。

以上2点の変更点をお試しください。

*******************************参考画面例

HPアドレス・未記入例--------------------------
お名前 nxer
メールアドレス nxer@ne.jp
メールのタイトル 追加入力フォームの必須化
メッセージ これは、追加入力フォームを必須化
するテストです。HPアドレスを例と
します。
HPアドレス

警告文--------------
エラー
■ 追加入力欄

が未記入です。
戻る
-------------------送信例
お名前 nxer
メールアドレス nxer@ne.jp
メールのタイトル 追加入力フォーム
重要度 3
メッセージ形式 TEXT
メッセージ 必須化はできます。
URL http://www.nxer.co.jp
以上の内容で
【管理人 <xxxxx@xxx.xx.xx>】
宛にメールを送信しました。
---------------------------

suepon.com | CGI作成/CGI制作 | JavaScript | ドメイン検索 | バナー自動作成 | Google ダンスツール | 松浦亜弥 | H.P.memo | パソコン | ネイル

Copyright (C) 2002 - 2009 suepon , All rights reserved. Powered by CGI Script Market.