**[[質問箱5/185]] [#x180d2ff] #author("2018-03-11T22:02:08+09:00;2015-04-27T11:15:46+09:00","","") **[[質問箱/5185]] [#x180d2ff] |RIGHT:70|LEFT:410|c |~カテゴリ|セキュリティ・スパム・悪戯対策| |~サマリ|pcommentのコメントにIDを付けたい| |~バージョン|1.5.0| |~投稿者|[[ret]]| |~状態|完了| |~投稿日|&new{2015-04-26 (日) 10:49:23};| ***質問 [#s8c4d707] 荒らし、自演コメントを防止するために、コメントされる一人一人にIPなどからランダム生成されるIDを付けたいです。 何かいいプラグインや改造方法などはあるでしょうか? もしくは、pcommentプラグイン以外の掲示板のような扱いが出来る、IDが付けられるコメントプラグインなどもあればよろしくお願いします。 例 ○○○ --[この辺りにID] 2014-01-01 (日) 00:00:00 ***回答 [#x20b670e] - [[欲しいプラグイン/378]]を元にして$_SERVER['REMOTE_ADDR']をIDに変換する関数を作り。それを通して出力すればよいかと。ただしページを凍結しないと改編可能であることに注意。 -- &new{2015-04-26 (日) 15:04:46}; - 回答ありがとうございます。申し訳ないのですが、どうやら私の知識ではできないようです・・・。pcommentの変更場所、IDに変換する関数などについてご教示いただける嬉しいです。 -- &new{2015-04-26 (日) 23:24:22}; -pcomment.inc.php v 1.48(Pukiwiki1.5.0-eucjpにあった物)を基準にします。 --183行目ぐらい check_editable($page, true, true); をコメントアウト。 pcommentで凍結されたページに書き込むことが出来るようになります。(悪用可能なので注意) --189行目くらい $name = ($name == '') ? '' : str_replace('$name', $name,PLUGIN_PCOMMENT_FORMAT_NAME); と $date = (! isset($vars['nodate']) || $vars['nodate'] != '1') ? の間に $id = $_SERVER['REMOTE_ADDR']; $ida = explode('.',$id); $id = sprintf('%02x%02x%02x%02x',$ida[0],$ida[1],$ida[2],$ida[3]); $id = crypt($id,'sa'); // sa は他の2文字に変え、利用者には秘密(IPが漏洩する) $id = substr($id,2,strlen($id)-2); $name = $name."{".$id."}"; を挿入 極簡単な暗号化ですが、同じIPなら同じIDが追加されるようになります。-- &new{2015-04-27 (月) 04:03:22}; - ご返答ありがとうございます。詳しい内容のおかげでうまくIDを付ける事ができました。お二方、貴重な時間を割いていただいてありがとうございます。状態を完了にさせていただきます。 -- &new{2015-04-27 (月) 11:15:25}; #comment