| お久しぶりです。プログラム的には順調なのですが、ESPさんと同じ様に連続投票に悩んでおりました。 私も同じ様に > まずip.logという空のファイルを作ってアップロード。 > 412行目位にある、 > $addr = $ENV{'REMOTE_ADDR'}; > の下に > $ipflag=0; # IPがすでにあるかのフラグ > open(IPI,"ip.log"); > while (<IPI>){ > if($_ eq $ad){$ipflag=1; last;}#IPがすでにある場合フラグを立てて終わり > } > close(IPI); > if($ipflag){if($SSI){&html_($ARGV[1],0);}else{&gif_;}}#フラグがたっている場合 > else{#そうでない場合 > if((-M "$tlog") < 1){#更新されてから1日以内ならIP追加 > open(IPO,">>ip.log"); > print IPO $ad; > close(IPO); > }else{#更新されて1日以上ならログをフォーマットして追加 > open(IPO,">ip.log"); > print IPO $ad; > close(IPO); > } > } > > を追加。それからset.cgiの42行目あたりにある、簡易投票防止を2番にします。 > これで完了。 > 同じIPからは1日1票しか入れられなくなりますが、 とやってみたのですが、変わらず連続投票が出来てしまいました。 ip.logも0バイトのままですし・・・。 ウチの投票所の場合、今は3時間に1度(0.126)の投票に設定しているので 出来ればそれも有効に出来ないかと思うのですが・・・。 以前教えていただいたように、いろいろと改造しまくったのが仇となっているのでしょうか?
あと別件なのですが、E-mailの記入を義務付ける事は出来るようですが 名前を義務付けるにはどうすれば良いのでしょうか? if($com_e && $logs eq ""){&er_("E-mailが未入力!");} の$logsを何かに変えればいいと思うのですが判りませんでした。 どうかご教授よろしくお願いたします。
P,S 私事ではありますが、ESPさんメールありがとうございました。
|