新10 1- カキコミ
[335]名無しさん@PHP 2009/07/23(木) 01:06:38 ID:KT1imVeY
>>334

ぜろちゃんねるから引っ張ってきたが
この後どうやってPHP化するか分からん・・・

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

# 種の生成
#ez番号から
if($hosts =~ /\.ezweb\.ne\.jp/){
$host = $ENV{'HTTP_X_UP_SUBNO'};
$host = substr($host , 3 , 4);#上から三つ目から四桁抽出
}
#iモードIDから
elsif($hosts =~ /\.docomo\.ne\.jp/){
$host = $ENV{'HTTP_X_DCMGUID'};
$host = substr($host, 0 , 3);#上から三つ取得
}
#softbank端末シリアル番号から
elsif($hosts =~ /\.jp-.\.ne.jp/){
$agent = $ENV{'HTTP_USER_AGENT'};
$agent =~ /SN([A-Za-z0-9]{5})(\1+)/;#上から五桁取得
$host = $1;
}
#どれでもなかったときIPから
else{
@nums= split(/\./,$ENV{'REMOTE_ADDR'});# ip番号を分解
$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;
}
vara.plの135行目あたり
$id= $oConv->MakeID($oSys->Get('SERVER'),8,$oConv->GetRemoteHost());
に変更
カキコミ
r.php ver2.5 (2005/03/28)