GenesisさんのFRIENDS BOARD-i Ver.2.40というスクリプトを、自分で
少しだけ修正して女性向フリマのBBSとして使っています。
最近すごく困ってる事があるんですけど、多分業者さんだと思うんです
けど、禁止しているアダルト商品とかを何度削除しても、何度も何度も
出品してくるんです。。。
女性向サイトだから意味ないのに。。。
そこで、色々対策し、その上で考えたですけど、投稿できるメールアド
レス(ドメイン)を指定、限定できるようにしたいんです。
私もざっとプログラムを見てみたんですけど、標準では投稿者が新規
投稿時に入力した内容が、そのまま投稿者のメールアドレスとして登録
されています。
具体的に、こういう処理になっています。
メールアドレス<BR>
<INPUT size="16" type="text" name="mail" maxlength="64"><BR>
フォームに入力した内容 = "mail" といった感じです。
これを、@マーク以前は従来通りフォームからの自由入力で、ここでの
入力内容を仮にaとして、
@マークは固定、これを仮にbとして、
@マーク以降のドメインは、指定のドメインを<SELECT>メニューで指定
(仮に、 aaa.ne.jp ・ bbb.ne.jp ・ ccc.ne.jp)し、投稿者はその中か
ら選択、
この選択結果を仮にcとして、
a+b+c= (name="mail")
としたいんです。。。
私の説明メチャクチャですね。。。 うまく伝わるといいんですけど。。。
すごく困っていて、早く対策をしたいと思っています。。。
詳しい方、ぜひアドバイスお願いします。。。
No.2ベストアンサー
- 回答日時:
当面やりたいことを、ということで、どうぞ:
f_board.cgi:
> $mail = $FORM{'mail'};
$mail = $FORM{'account'} . "\@" . $FORM{'domain'};
> メールアドレス<BR>
> <INPUT size="16" type="text" name="mail" maxlength="64"><BR>
メール アドレス<BR>
<INPUT type=text name="account" size="16" maxlength="32">\@<SELECT name="domain"><OPTION value="aaa.ne.jp">aaa.ne.jp</OPTION><OPTION value="bbb.ne.jp">bbb.ne.jp</OPTION><OPTION value="ccc.ne.jp">ccc.ne.jp</OPTION></SELECT><BR>
> if ($mail eq "") { &error("メールアドレスが未記入です。"); }
if (!$FORM{'account'} || !$FORM{'domain'}) { &error("メール アドレスが未記入です。"); }
ざっと通して見ただけなので、不足部分があるかもしれません。
No.3
- 回答日時:
思うに、maki_yoshinakaさんはその業者の記入してくるメールアドレスを書き込み不可にしたいとかそういうことだろうか?
ちょっとそのCGIをダウンロードしてきて自分なりに改造してみた。
・システム設定に許可メールアドレスと禁止メールアドレスを設ける。
・許可メールアドレスが設定されてる場合、その許可メールアドレスのいずれかを含むメールアドレスしか書き込みできない。
・禁止メールアドレスが設定されてる場合、その禁止メールアドレスのいずれかを含むメールアドレスは書き込みできない。
というふうにしてみた。
具体的にはどうしたかっていうと
ダウンロードしてきたFRIENDS BOARD-i Ver.2.40のf_board.cgiを以下のように修正。
○223行目と224行目の間に以下を追加
# 2006/05/26追加
$SYSTEM[23] =~ s/,/\n/g;
print <<"EOM";
□ 許可メールアドレス<BR>
※複数指定の場合は改行で区切ってください。<BR>
<TEXTAREA rows="10" cols="30" name="SYSTEM23">$SYSTEM[23]</TEXTAREA><BR>
EOM
$SYSTEM[22] =~ s/,/\n/g;
print <<"EOM";
□ 禁止メールアドレス<BR>
※複数指定の場合は改行で区切ってください。<BR>
<TEXTAREA rows="10" cols="30" name="SYSTEM22">$SYSTEM[22]</TEXTAREA><BR>
EOM
# 2006/05/26追加
○315行目と316行目の間に以下を追加
$FORM{'SYSTEM22'} =~ s/\r\n/,/g;
$FORM{'SYSTEM22'} =~ s/\r|\n/,/g;
$FORM{'SYSTEM23'} =~ s/\r\n/,/g;
$FORM{'SYSTEM23'} =~ s/\r|\n/,/g;
○342行目と343行目の間に以下を追加
$FORM{'SYSTEM22'}
$FORM{'SYSTEM23'}
○406行目と407行目の間に以下を追加
□ 許可メールアドレス<BR>
$SYSTEM[23]<BR>
□ 禁止メールアドレス<BR>
$SYSTEM[22]<BR>
○1012行目と1013行目の間に以下を追加
@KYOKA = split(/,/,$SYSTEM[23]);
if (@KYOKA ne "") {
foreach (@KYOKA) { if (index($mail,$_) < '0') { &error("メールアドレス不正。処理を中断します。"); } }
}
@TABOO2 = split(/,/,$SYSTEM[22]);
if (@TABOO2 ne "") {
foreach (@TABOO2) { if (index($mail,$_) >= '0') { &error("メールアドレス不正。処理を中断します。"); } }
行数はダウンロードしてきた未改造のファイルの行数なので注意ね。
No.1
- 回答日時:
内容は伝わりますが、HTML で結合することは無理なので、CGI スクリプトで結合させる必要があります。
ただ、そうしたとしても、スパム投稿を避けることにはつながらないのではないかと思います。
レスありがとうございます。
>内容は伝わりますが、HTML で結合することは~
そうですね。それはわかります。
そうする為にはどう記述したら良いか知りたいんです。。。
>ただ、そうしたとしても、スパム投稿を~
そうですね。
スパム投稿防止には色々な手法があるのは承知しています。
ただ、とりあえず今回は、先に書いた内容の対策を、その全体の対策の
一環としてとりたいと考えています。
今、試行錯誤やってみてたところなんですけど、なかなかうまくいき
ません。。。
引き続き、詳しい方、アドバイスお願いします。。。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
- JavaScript sessionStorageを調べています。 1 2023/06/20 12:41
- PHP if(preg_match("/[^0-9]/",$gu_d)){意味を教えてください。 1 2022/05/06 05:37
- JavaScript javascriptで入力フォームが空欄の時にアラートによるエラーを出すコードを書いています。 2 2023/06/13 17:58
- PHP PHPで画像の渡しが上手く行きません。 1 2023/02/02 09:39
- Visual Basic(VBA) 複数ファイルのデータの統合について 12 2022/05/14 12:03
- 統計学 統計学の質問【帰無仮説】 高校の新学習指導要領では、統計的仮説検定の基本的な考え方が必修単元となった 5 2023/05/23 21:00
- Facebook 「グレーアカウントに対する対応が必要です」という通知の対応について 2 2022/04/14 09:43
- Instagram インスタの画像を複数枚投稿出来るものと出来ないものがある問題についてどなたか教えて下さい。 インスタ 4 2022/06/07 13:53
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
フォームーSubmitから呼...
-
入力フォームの値が消える
-
postmailの確認画面でプルダウ...
-
メールフォームで送信先アドレ...
-
ビジネスメールの敬称
-
Windowsのアプリ開発ってなんの...
-
エクセルVBA テキストボックス...
-
テキストボックスの番号を使っ...
-
数字以外の入力をエラーにする...
-
非同期通信で掲示板を作る際の...
-
ページ移動した場合の、フォー...
-
httpリクエストの送り元の特定
-
入力フォームの値をQRコードで...
-
php 確認表示画面で値をSESSION...
-
c#でTextBoxの入力制限
-
VBAで質問があります
-
初歩的な事だと思います。 Sub...
-
arrows we
-
ExcelVBA No.を自動連番で設定...
-
Excel-VBAでInputBox+Pulldown...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
入力フォームの値が消える
-
メールフォームで送信先アドレ...
-
ビルダー20 お問合せフォー...
-
アンケートフォームなどの送信...
-
ホームページビルダー18での...
-
フォームーSubmitから呼...
-
入力フォームの改造をしたいん...
-
携帯に任意のURLをメール転...
-
プルダウンの項目によって送信...
-
フォームから送信されたメール...
-
javascriptの数値をcgiへ渡したい
-
メールフォームで必須項目の仕方
-
javascript フォームタグ 画面...
-
ビジネスメールの敬称
-
エクセルVBA テキストボックス...
-
テキストボックスの番号を使っ...
-
DATE型変数を初期化する方法
-
Safariで「本当にこのフォーム...
-
VBAで質問があります
-
フォームを再送信しますか?
おすすめ情報