記事No | : 13202 |
投稿日 | : 2014/08/30(Sat) 13:26:28 |
タイトル | : clipmailの機能 [二重送信防止]の意味 |
ID情報 | : aki0913 |
投稿者 | : chari |
URL | : http://www.eplan-e.com/clipmail/clipmail.html |
clipmailの機能的な特長として以下の項があります。
------------------------------------------------------
二重送信を防止することができます。(同一内容の連続送信を制限)
------------------------------------------------------
この詳しい内容をお聞かせください。
【同一内容】とは何をさすのか?
添付ファイルが同一なのか
IPアドレスが同一なのか
フォームに入力した内容が同一なのか
その他なのか
【連続送信】とは?
文字どおり[続けて送信する行為]と解釈して良いのか
制限する時間(期間)に決まりがあるのか
制限する時間(期間)の変更ができるのか
また、上記とは全く別の解釈が必要なのかがわかりません。
どうぞよろしくお願いいたします。
記事No | : 13204 |
投稿日 | : 2014/09/01(Mon) 11:09:38 |
タイトル | : Re: clipmailの機能 [二重送信防止]の意味 |
ID情報 | : hirayama |
投稿者 | : hirayama |
clipmail.cgiの処理を見た限りでは、
フォームに入力した内容が前回送信した内容とすべて同一だったら、同一内容と判断されているようです。
添付ファイルについては、ファイル名が同じだと同一と判断されるようです。
前回送信した内容は./dataディレクトリのlog.cgiに保存されています。
このログにはIPアドレスも保存されていますが、同一内容のチェックには使用されていないようです。
また、投稿時間は特に見ていないようなので、何時間たっても、その後ほかの投稿がなければ、同一と判断されることになります。
記事No | : 13215 |
投稿日 | : 2014/09/01(Mon) 22:26:35 |
タイトル | : Re^2: clipmailの機能 [二重送信防止]の意味 |
ID情報 | : aki0913 |
投稿者 | : chari |
URL | : http://www.eplan-e.com/clipmail/clipmail.html |
> clipmail.cgiの処理を見た限りでは、
> フォームに入力した内容が前回送信した内容とすべて同一だったら、同一内容と判断されているようです。
> 添付ファイルについては、ファイル名が同じだと同一と判断されるようです。
> 前回送信した内容は./dataディレクトリのlog.cgiに保存されています。
> このログにはIPアドレスも保存されていますが、同一内容のチェックには使用されていないようです。
>
> また、投稿時間は特に見ていないようなので、何時間たっても、その後ほかの投稿がなければ、同一と判断されることになります。
ありがとうございます。
教えて頂いた内容をふまえてテストしてみました。
①「フォームに入力した内容」がすべて同じのを連続送信したら、二重送信エラーになる。(自分でテストするのでこの連続送信確認が可能)。
②あいだに「フォームに入力した内容を一部変更」して送信したものは、1分後であっても送信可能。
ということが良く確認できました。
実は、このフォームの特徴の「二重送信防止」を「署名活動」に利用したいと思ったのです。
署名の場合、同一人物の重複は避けたいところでしたが、こちらの利用目的に都合よく解釈することはやはり無理がありますね。
実際の運用場面では、入力者自身が自分の名前ですら「姓」と「名前」の間にスペースを入れる・入れない、番地を漢字にする、または全角・半角の数字にする、などその他さまざまなバリエーションがあり、その都度別人のログとして記録されてしまいますから.....。
そこで、せめて「IPアドレスが同一」な場合は、「二重送信防止」が可能でしょうか?
可能な場合は、どうすれば良いのでしょうか?
よろしくお願いいたします。
記事No | : 13216 |
投稿日 | : 2014/09/02(Tue) 00:32:38 |
タイトル | : Re^3: clipmailの機能 [二重送信防止]の意味 |
ID情報 | : hirayama |
投稿者 | : hirayama |
同じIPアドレスからの連続送信を禁止したいなら、
clipmail.cgi 439行目あたりの
if (!$flg) {
↓
if (!$flg || (split(/=/,$log_ip))[1] eq $addr) {
でいけると思います。
記事No | : 13218 |
投稿日 | : 2014/09/02(Tue) 14:43:24 |
タイトル | : Re^4: clipmailの機能 [二重送信防止]の意味 |
ID情報 | : aki0913 |
投稿者 | : chari |
URL | : http://www.eplan-e.com/clipmail/clipmail.html |
> 同じIPアドレスからの連続送信を禁止したいなら、
>
> clipmail.cgi 439行目あたりの
> if (!$flg) {
> ↓
> if (!$flg || (split(/=/,$log_ip))[1] eq $addr) {
> でいけると思います。
ありがとうございます。
教えて頂いた中身で、以下の条件でテストをしてみました。
同じルーターを介した[別メールアドレス][別のマシン][別の名前(=別の入力内容)]からの送信です。
ところが、「同じIPアドレスの二重送信防止」ではうまくいかないことがわかりました。
後でわかったことですが、[別メールアドレス]でも同じルーターを介していると「同じIPアドレス」になってしまい、例えば家族・同じ会社の社員などは送信出来なくなってしまいます。
恥ずかしながら今まで、IPアドレスとはメールアドレスのことだと誤解しておりました。
結論です。
CGIの記述をもとに戻した上で運用し、重複したものや悪意のログはエクセルで削除した上で使用いたします。
本当にありがとうございました。
記事No | : 13223 |
投稿日 | : 2014/09/04(Thu) 01:05:50 |
タイトル | : Re^5: clipmailの機能 [二重送信防止]の意味 |
ID情報 | : aki0913 |
投稿者 | : chari |
URL | : http://www.eplan-e.com/clipmail/clipmail.html |
> > 同じIPアドレスからの連続送信を禁止したいなら、
> >
> > clipmail.cgi 439行目あたりの
> > if (!$flg) {
> > ↓
> > if (!$flg || (split(/=/,$log_ip))[1] eq $addr) {
> > でいけると思います。
>
うっかりしていました。
自分の勘違いから、IPアドレスにこだわっていましたが、「同じメールアドレスの重複を防止する」仕組みにすれば良いのではないか?と今頃思い至りました。
申し訳ありませんが、今度は「同じメールアドレスからの連続送信を防止する」方法を教えて頂けないでしょうか?
記事No | : 13224 |
投稿日 | : 2014/09/04(Thu) 02:04:25 |
タイトル | : Re^6: clipmailの機能 [二重送信防止]の意味 |
ID情報 | : hirayama |
投稿者 | : hirayama |
同じ所を
if (!$flg || $$in{'email'} eq $log{'メールアドレス'}) {
とすれば、いいと思います。
記事No | : 13227 |
投稿日 | : 2014/09/04(Thu) 10:51:01 |
タイトル | : Re^7: clipmailの機能 [二重送信防止]の意味 |
ID情報 | : aki0913 |
投稿者 | : chari |
URL | : http://www.eplan-e.com/clipmail/clipmail.html |
> 同じ所を
> if (!$flg || $$in{'email'} eq $log{'メールアドレス'}) {
> とすれば、いいと思います。
いつもありがとうございます。
これで検討してみます。