动网是ASP的呀,我要的是PHP的

解决方案 »

  1.   

    不會很難,思路如下:
    建一資料表,存被封的IP地址
    在要檢查的頁面中加入判斷:取得客戶的IP,看看是否在上面的資料表中
    後台只要維護那個資料表就好了
      

  2.   

    ipdog.php
    <?php
    $ipdog=file('ipdog.txt');
    $error=0;
    foreach($ipdog as $v){
    if(strlen($v)==strlen($REMOTE_ADDR)){
    if($v==$REMOTE_ADDR){
    $error=1;
    }
    }else{
    if($v==substr($REMOTE_ADDR,0,strlen($v))){
    $error=1;
    }
    }
    }
    if($error==1){
    include 'error.htm';
    exit;
    }
    ?>
    error.htm<center>
    <h1>出现错误!IP被禁止!</h1>
    </center>
    <li><h2>使用方法</h2>
    <li>将要屏蔽的ip或ip段输入ipdog.txt,每条记录1行
    <li>将ip被禁止时显示的页面内容写入error.htm
    <li>在要控制访问ip的页面上开头加入<br>include 'ipdog.php';</br>即可
      

  3.   

    <?php
    $host="localhost";
    $name="root";
    $pwd="你的密码";
    $con=mysql_pconnect($host,$name,$pwd)or die(ERROE);
    $ip=$_SERVER['REMOTE_ADDR'];
    $sql="select * from db where ip='$ip'";
    $result=mysql_query($sql);
    $num=mysql_num_rows($result);
    if(◎$num){header(Location:error.htm \n);
    }
    ?>
    在每个叶子里面include这个就行了
    被禁止的IP自己添到数据库里
      

  4.   

    1000分都给uGain(幽亙)吧,实现了
      

  5.   

    呵呵。。uGain(幽亙)兄白得1000分呀。
      

  6.   

    <?
    /*
    MySQL Table:CREATE TABLE Use_Ip (
    Use_Ip varchar(15) Not Null,
    PRIMARY KEY  (Use_Ip)
    ) TYPE=MyISAM;
    类使用方法:新建对象
    $c=new CheckIp("MySQL主机","Mysql用户名","Mysql密码","Mysql数据库","Mysql数据表");插入新的禁用IP
    if($c->InsertIp("127.0.0.*") == false){
    echo "cannot insert Ip!!";
    exit;
    }删除禁用IP
    $c->DeleteIp("127.0.0.*");检测IP
    if($c->Check("127.0.0.1")){
    echo "your can not pass";
    exit;
    }禁用IP格式单ip: 127.0.0.1IP段: 127.0.0.*
          127.0.*.*
          127.*.*.*
          
    禁用所有Ip: *.*.*.**/class CheckIp {
    var $MySQL_Host;
    var $MySQL_User;
    var $MySQL_Pass;
    var $MySQL_DB;
    var $MySQL_Table;
    var $CheckIP;
    var $conn;

    function CheckIp($M_h,$M_u,$M_p,$M_DB,$M_t){
    $this->MySQL_Host = $M_h;
    $this->MySQL_User = $M_u;
    $this->MySQL_Pass = $M_p;
    $this->MySQL_DB = $M_DB;
    $this->MySQL_Table = $M_t;
    $this->conn=mysql_connect($this->MySQL_Host, $this->MySQL_User, $this->MySQL_Pass);
    if(!mysql_select_db($this->MySQL_DB,$this->conn)) $this->error(mysql_error());

    }

    function InsertIp( $M_ip ){
    $sql="INSERT INTO ".$this->MySQL_Table." VALUES ( '$M_ip' )";
    if(@mysql_query($sql,$this->conn)){
    $this->error(mysql_error());
     return false;
    }
    return true;
    }

    function DeleteIp( $M_ip ){
    $sql="DELETE FROM ".$this->MySQL_Table." WHERE Use_Ip='$M_ip'";
    if(@mysql_query($sql,$this->conn)){
    return false;
    }
    return true;
    }

    function Check( $c_ip ){
    $user_ip=$c_ip;
    $u_i_array=explode(".",$user_ip);

    $query="SELECT * FROM ".$this->MySQL_Table;
    $result=mysql_query($query,$this->conn);
    $Check_Mask = 0;
    while($row=mysql_fetch_Array($result,$this->conn)){
    $m_array=explode(".",$row[Use_Ip]);
    if($m_array[3]==$u_i_array[3] || $m_array[3]=="*"){
    if($m_array[2]==$u_i_array[2] || $m_array[2]=="*"){
    if($m_array[1]==$u_i_array[1] || $m_array[1]=="*"){
    if($m_array[0]==$u_i_array[0] || $m_array[0]=="*"){
    $Check_Mask++;
    break;
    }
    }
    }
    }
    }
    if($Check_Mask > 0){
    return true;
    }
    return false;
    }

    function error( $msg ){
    echo $msg;
    exit;
    }

    }
    ?>
      

  7.   

    将hodat(华帝)的稍微改造一下应该是比较理想的。