teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

9

コードを一部変更しました

2021/06/27 01:52

投稿

abokado
abokado

スコア0

title CHANGED
File without changes
body CHANGED
@@ -92,10 +92,12 @@
92
92
  elsif($FORM{'age'} eq ''){print "<P id=\"p6\">年齢が未選択です</p>";}
93
93
  elsif($FORM{'com'} eq ''){print "<P id=\"p6\">コメントが未記入です</p>";}
94
94
 
95
- __else{
95
+ else{
96
96
  foreach $haijyo (@haijyo) {
97
- if ($FORM{'com'} =~ /$haijyo/) {print "<P id=\"p6\">NGワードで投稿できません</p>";}
97
+ if ($FORM{'com'} =~ /$haijyo/) {
98
+ &error_message('NGワードがあります');
98
- }__
99
+ }
100
+ }
99
101
 
100
102
  print <<"EOM";
101
103
 

8

説明文を変更しました

2021/06/27 01:52

投稿

abokado
abokado

スコア0

title CHANGED
File without changes
body CHANGED
@@ -124,17 +124,16 @@
124
124
 
125
125
 
126
126
 
127
- NGワードがありま」と出るようなりましたが、「戻って修正する」という表示を出すことができませんでした
127
+ NGワードがヒットすると、以下のような変化がありましたが、メッセージや「戻って修正する」ボタンが表示されません。
128
128
 
129
- 投稿ボタンまで出てしまっています。
129
+ ![イメージ説明](d184ca14468d6670cdd3aea7b02a21d3.png)
130
130
 
131
- ![イメージ説明](99bb97e9ccc934622613f6bdb07e5893.png)
132
131
 
132
+ 下の図は、名前を空欄にした時ですが、メッセージが表示され、「戻って修正する」ボタンが表示されます。
133
133
 
134
- 下の図は、名前を空欄にした時ですが、この場合は投稿ボタンは出ないんです。
135
134
 
136
135
  ![イメージ説明](b10cc7d7ad2d22eb055b81c683f00430.png)
137
136
 
138
- NGワードがヒットした時も、名前の空欄時と同じように、投稿ボタンを出さないようにするには、どうすれば良いでしょうか
137
+ NGワードがヒットした時も、名前の空欄時と同じように、メッセージが表示され、「戻って修正する」ボタンが表示するには、どうすれば良いでしょうか
139
138
 
140
139
  よろしくお願い致します。

7

説明文を変更しました

2021/06/27 01:45

投稿

abokado
abokado

スコア0

title CHANGED
File without changes
body CHANGED
@@ -30,24 +30,6 @@
30
30
 
31
31
  上記(A)を、ここでいただいたアドバイスに従って下記(B)に組み込こんでみました。
32
32
 
33
- 「NGワードがあります」と出るようになりましたが、「戻って修正する」という表示を出すことができませんでした。
34
-
35
- 投稿ボタンまで出てしまっています。
36
-
37
- ![イメージ説明](99bb97e9ccc934622613f6bdb07e5893.png)
38
-
39
-
40
- 下の図は、名前を空欄にした時ですが、この場合は投稿ボタンは出ないんです。
41
-
42
- ![イメージ説明](b10cc7d7ad2d22eb055b81c683f00430.png)
43
-
44
- NGワードがヒットした時も、名前の空欄時と同じように、投稿ボタンを出さないようにするには、どうすれば良いでしょうか。
45
-
46
- よろしくお願い致します。
47
-
48
-
49
-
50
-
51
33
  以下はPerlの掲示板プログラムの一部です。
52
34
 
53
35
  -(B)-----------------------------------------------------------------
@@ -138,4 +120,21 @@
138
120
  }exit;
139
121
  ```
140
122
 
141
- -------------------------------------------------------------------
123
+ -------------------------------------------------------------------
124
+
125
+
126
+
127
+ 「NGワードがあります」と出るようになりましたが、「戻って修正する」という表示を出すことができませんでした。
128
+
129
+ 投稿ボタンまで出てしまっています。
130
+
131
+ ![イメージ説明](99bb97e9ccc934622613f6bdb07e5893.png)
132
+
133
+
134
+ 下の図は、名前を空欄にした時ですが、この場合は投稿ボタンは出ないんです。
135
+
136
+ ![イメージ説明](b10cc7d7ad2d22eb055b81c683f00430.png)
137
+
138
+ NGワードがヒットした時も、名前の空欄時と同じように、投稿ボタンを出さないようにするには、どうすれば良いでしょうか。
139
+
140
+ よろしくお願い致します。

6

説明文を変更しました

2021/06/27 01:38

投稿

abokado
abokado

スコア0

title CHANGED
File without changes
body CHANGED
@@ -30,10 +30,24 @@
30
30
 
31
31
  上記(A)を、ここでいただいたアドバイスに従って下記(B)に組み込こんでみました。
32
32
 
33
- 「NGワードがあります」と出るようになりましたが、「修正して戻る」という表示を出すことができません。
33
+ 「NGワードがあります」と出るようになりましたが、「戻って修正る」という表示を出すことができませんでした
34
34
 
35
+ 投稿ボタンまで出てしまっています。
35
36
 
37
+ ![イメージ説明](99bb97e9ccc934622613f6bdb07e5893.png)
36
38
 
39
+
40
+ 下の図は、名前を空欄にした時ですが、この場合は投稿ボタンは出ないんです。
41
+
42
+ ![イメージ説明](b10cc7d7ad2d22eb055b81c683f00430.png)
43
+
44
+ NGワードがヒットした時も、名前の空欄時と同じように、投稿ボタンを出さないようにするには、どうすれば良いでしょうか。
45
+
46
+ よろしくお願い致します。
47
+
48
+
49
+
50
+
37
51
  以下はPerlの掲示板プログラムの一部です。
38
52
 
39
53
  -(B)-----------------------------------------------------------------
@@ -124,22 +138,4 @@
124
138
  }exit;
125
139
  ```
126
140
 
127
- -------------------------------------------------------------------
141
+ -------------------------------------------------------------------
128
-
129
- 【更新】
130
-
131
- 修正してみました。斜字のところが修正部分です。
132
-
133
- 下図の通り、NGワードを認識して、表示が出るようになりました!
134
- しかしながら投稿ボタンまで出てしまっています。
135
-
136
- ![イメージ説明](99bb97e9ccc934622613f6bdb07e5893.png)
137
-
138
-
139
- 下の図は、名前を空欄にした時ですが、この場合は投稿ボタンは出ないんです。
140
-
141
- ![イメージ説明](b10cc7d7ad2d22eb055b81c683f00430.png)
142
-
143
- NGワードがヒットした時も、名前の空欄時と同じように、投稿ボタンを出さないようにするには、どうすれば良いでしょうか。
144
-
145
- よろしくお願い致します。

5

説明文を変更しました

2021/06/27 01:36

投稿

abokado
abokado

スコア0

title CHANGED
File without changes
body CHANGED
@@ -2,9 +2,8 @@
2
2
 
3
3
  「NGワードがあります」
4
4
 
5
- という表示を出したいと思っていますが、そのやり方が分かりません。
5
+ という表示を出したいと思っていますが、そのやり方が分かりませんでした
6
6
 
7
-
8
7
  ネットで調べたら
9
8
 
10
9
  特定文字をNGワードとして、はねる場合は、以下(A)を組み込めば良いことが分かりました。
@@ -29,9 +28,9 @@
29
28
  ------------------------------------------
30
29
 
31
30
 
32
- 上記(A)を下記(B)に組み込むにはどうすれば、良いのでしょうか?
31
+ 上記(A)を、ここでいただいたアドバイスに従って下記(B)に組み込こんみまた。
33
32
 
34
- 自分でやってみましたが、うまくできませんでした
33
+ 「NGワードがありす」と出るようになりましたが、「修正して戻る」とい表示を出すことができません。
35
34
 
36
35
 
37
36
 
@@ -141,6 +140,6 @@
141
140
 
142
141
  ![イメージ説明](b10cc7d7ad2d22eb055b81c683f00430.png)
143
142
 
144
- NGワードがヒットした時も、名前の空欄時と同じように、投稿ボタン出さないようにするには、どうすれば良いでしょうか。
143
+ NGワードがヒットした時も、名前の空欄時と同じように、投稿ボタン出さないようにするには、どうすれば良いでしょうか。
145
144
 
146
145
  よろしくお願い致します。

4

Codeにしました。

2021/06/27 01:34

投稿

abokado
abokado

スコア0

title CHANGED
File without changes
body CHANGED
@@ -12,6 +12,7 @@
12
12
 
13
13
  -(A)----------------------------------
14
14
 
15
+ ```ここに言語を入力
15
16
  @haijyo = (
16
17
  'バカ'
17
18
  ,'アホ'
@@ -23,6 +24,7 @@
23
24
  &error_message('NGワードがあります');
24
25
  }
25
26
  }
27
+ ```
26
28
 
27
29
  ------------------------------------------
28
30
 
@@ -37,6 +39,7 @@
37
39
 
38
40
  -(B)-----------------------------------------------------------------
39
41
 
42
+ ```ここに言語を入力
40
43
  <TR><TD>
41
44
  <form action="$bbs_write" method="POST">
42
45
  <input type=hidden name="mode" value="check1">
@@ -120,6 +123,7 @@
120
123
  </TD></TR></TABLE><BR>
121
124
  EOM
122
125
  }exit;
126
+ ```
123
127
 
124
128
  -------------------------------------------------------------------
125
129
 

3

図の説明を追記しました

2021/06/27 01:29

投稿

abokado
abokado

スコア0

title CHANGED
File without changes
body CHANGED
@@ -123,8 +123,20 @@
123
123
 
124
124
  -------------------------------------------------------------------
125
125
 
126
+ 【更新】
127
+
126
128
  修正してみました。斜字のところが修正部分です。
127
129
 
130
+ 下図の通り、NGワードを認識して、表示が出るようになりました!
131
+ しかしながら投稿ボタンまで出てしまっています。
132
+
128
133
  ![イメージ説明](99bb97e9ccc934622613f6bdb07e5893.png)
129
134
 
135
+
136
+ 下の図は、名前を空欄にした時ですが、この場合は投稿ボタンは出ないんです。
137
+
130
- ![イメージ説明](b10cc7d7ad2d22eb055b81c683f00430.png)
138
+ ![イメージ説明](b10cc7d7ad2d22eb055b81c683f00430.png)
139
+
140
+ NGワードがヒットした時も、名前の空欄時と同じように、投稿ボタンが出さないようにするには、どうすれば良いでしょうか。
141
+
142
+ よろしくお願い致します。

2

図を2つ追加しました

2021/06/26 14:13

投稿

abokado
abokado

スコア0

title CHANGED
File without changes
body CHANGED
@@ -1,4 +1,4 @@
1
- Perl(cgi)掲示板のコメント欄にNGをワードを書かれた場合、
1
+ 掲示板のコメント欄にNGをワードを書かれた場合、
2
2
 
3
3
  「NGワードがあります」
4
4
 
@@ -123,5 +123,8 @@
123
123
 
124
124
  -------------------------------------------------------------------
125
125
 
126
+ 修正してみました。斜字のところが修正部分です。
126
127
 
127
- どうかアドバスのほど、よろしくお願い致します。
128
+ ![メージ説明](99bb97e9ccc934622613f6bdb07e5893.png)
129
+
130
+ ![イメージ説明](b10cc7d7ad2d22eb055b81c683f00430.png)

1

ありがとうございました!ご教示いただいた通り(B)に(A)を組み込んでみました。実行してみたところ、NGワードを認識して表示成功です!しかし、NGワードがあるのに投稿ボタンが出てしまいます。

2021/06/26 14:08

投稿

abokado
abokado

スコア0

title CHANGED
File without changes
body CHANGED
@@ -64,20 +64,63 @@
64
64
  EOM
65
65
 
66
66
 
67
+ #■入力投稿内容確認モード
68
+ sub check1{
69
+ &header;
70
+ print <<"EOM";
71
+ <TABLE cellspacing="2" cellpadding="5" width="100%">
72
+ <TR><TD id="d07"><h5 id="h51">■$bbs_title (XXXX掲示板)</h5></TD></TR>
73
+
74
+ <TR><TD><P id="p1">
75
+ 投稿内容確認
76
+ </p></TD></TR>
77
+ <TABLE cellpadding="2" cellspacing="0" border="1" width="550">
67
78
  <TR><TD><P id="p1">お名前:</p></TD><TD><P id="p1">$FORM{'name'}</p></TD></TR>
68
79
  <TR><TD><P id="p1">地域:</p></TD><TD><P id="p1">$FORM{'sub'}</p></TD></TR>
69
80
  <TR><TD><P id="p1">年齢:</p></TD><TD><P id="p1">$FORM{'age'}</p></TD></TR>
70
81
  <TR><TD><P id="p1">コメント:</p></TD><TD><P id="p1">$FORM{'com'}</p></TD></TR>
71
82
  EOM
72
83
 
84
+
85
+ __@haijyo = (
86
+ 'バカ'
87
+ ,'アホ'
88
+ ,'頭が悪い'
89
+ );__
90
+
91
+
73
92
  if($FORM{'name'} eq ''){print "<P id=\"p6\">お名前が未記入です</p>";}
74
93
  elsif($FORM{'sub'} eq ''){print "<P id=\"p6\">地域が未選択です</p>";}
75
94
  elsif($FORM{'age'} eq ''){print "<P id=\"p6\">年齢が未選択です</p>";}
76
95
  elsif($FORM{'com'} eq ''){print "<P id=\"p6\">コメントが未記入です</p>";}
77
96
 
78
- else{
97
+ __else{
98
+ foreach $haijyo (@haijyo) {
99
+ if ($FORM{'com'} =~ /$haijyo/) {print "<P id=\"p6\">NGワードで投稿できません</p>";}
100
+ }__
101
+
79
102
  print <<"EOM";
80
103
 
104
+ <P id="p6">
105
+ print <<"EOM";
106
+ <P id="p6">
107
+ 下の「投稿ボタン」を押すと、入力したメールアドレス宛てに「確認メール」が送信されます。<BR>
108
+ 投稿ボタンを押す前に、再度ご確認下さい。</p>
109
+ <input type="submit" value="投稿">
110
+ EOM
111
+ }
112
+
113
+
114
+ print <<"EOM";
115
+ </TD></TR></TABLE>
116
+ </form><BR>
117
+ <FORM>
118
+ <INPUT type="button" value="戻って修正する" onClick="pageBack()">
119
+ </FORM>
120
+ </TD></TR></TABLE><BR>
121
+ EOM
122
+ }exit;
123
+
81
124
  -------------------------------------------------------------------
82
125
 
83
126