■掲示板に戻る■ 全部 1- 101- 201- 301- 最新50 [PR]ぜろちゃんねるプラス[PR]  

ぜろちゃんねるスクリプトを改造するスレ Part2

80 :7M. ◆dq7M./4Uw. :2009/05/18(月) 03:45:24 ID:2pSTYC8Y0
動作確認してないからわかんないんですけど、
こんな感じでどーすか。

sub MakeID
{
my $this = shift;
my ($server,$column) = @_;
my @times = localtime(time());
my (@nums,$ret,$host,$str);

# 種の生成
@nums = split(/\./,$ENV{'REMOTE_ADDR'}); # IPを分解

my $hosts = gethostbyaddr(pack('c4',@nums), 2);
if($hosts =~m/docomo\.ne\.jp/){
$host = $ENV{'HTTP_X_DCMGUID'};
$host = substr($host, 0 , 3);#上から三つ取得
}elsif($hosts =~m/ezweb\.ne\.jp/){
$host = $ENV{'HTTP_X_UP_SUBNO'};
$host = substr($host , 3 , 4);#上から三つ目から四桁抽出
}elsif($hosts =~m/jp-[cdhknqrst]\.ne\.jp/){
$ENV{"HTTP_USER_AGENT"} =~m|SN([A-Za-z0-9]{5})(\1+)| and $host = $1;
}else{
$host = substr($nums[3],-3) . substr($nums[2],-1) . substr($nums[1],-1); # 上位3つの1桁目取得
}
$str = $host . substr(crypt($server,$times[4]),-5); # server名結合
$column = -1 * $column; # 桁設定

# IDの生成
$ret = substr(crypt(crypt($str,$times[5]),$times[3]+31),$column);
$ret =~ s/\./+/g;

return $ret;
}

73KB
続きを読む

名前: E-mail(省略可)
READ.CGI - 0ch+ BBS 0.7.4 20131106
ぜろちゃんねるプラス