下面是引用月光於2006-01-25 16:41發表的 :
想起來之前PHPwind好像有一個問題就是只會讀取 ipdata/0.txt 的問題 你能把你的 
require/postfunc.php
傳上來讓我看看嗎?
我只有列出重點的部份,大概下面的編碼就是跟IP來源位置讀取有關係了。
複製程式
<?php
!function_exists('readover') && exit('Forbidden');
function cvipfrom($onlineip){
       $detail=explode(".",$onlineip);
       if (file_exists("ipdata/$detail[0].txt"))
              $filename="ipdata/$detail[0].txt";
       else
              $filename="ipdata/0.txt";
       for($i=0; $i<=3; $i++){
              $detail[$i]     = sprintf("%03d", $detail[$i]);
       }
       $onlineip=join(".",$detail);
       $db=fopen($filename,"rb");
       flock($db,LOCK_SH);
       $onlineipdb=fread($db,filesize($filename));
       if($windset=strpos($onlineipdb,"$detail[0].$detail[1].$detail[2]")){
              $ipfrom=ipselect($db,$windset,$onlineip);
       }elseif($windset=strpos($onlineipdb,"$detail[0].$detail[1]")){
              $ipfrom=ipselect($db,$windset,$onlineip);
       }elseif($windset=strpos($onlineipdb,$detail[0])){
              $ipfrom=ipselect($db,$windset,$onlineip);
       }
       fclose($db);
       if(empty($ipfrom)) $ipfrom='未知地址'
       return $ipfrom;
}
function ipselect($db,$offset,$onlineip){
       fseek($db,$offset,SEEK_SET);
       $getcontent=fgets($db,100);
       $iparray=explode("|",$getcontent);
       if ($onlineip>=$iparray[0] && $onlineip<=$iparray[1]) return $iparray[2].$iparray[3];
}