原来写的IPwhois类
<?php
/*
*
* Klasse: IP Whois Version 1.0
* Info: Erhalten Sie IP-Informationen von einem 4-Whois-Server
* Autor: PHPUp Studio
* Datum: 12.12.2004
* www.knowsky.com
*
*/
Klasse IPWhois
{
var $server = 'whois.arin.net';
var $ziel;
var $timeout = 10;
var $msg;
Funktion IPWhois($target)
{
$this->target = $target;
}
Funktion ShowInfo()
{
if($this->_CheckIP($this->target))
{
$this->msg = $this->_GetInfo($this->server);
if($this->_CheckInfo($this->msg))
{
$this->msg = $this->_GetInfo($this->server);
}
}
else $this->msg = '<p>Bitte geben Sie eine IP-Adresse ein<br></p>';
return $this->msg;
}
Funktion _CheckIP($temptarget)
{
if(eregi("[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}", $temptarget))
{
$f = 1;
$detail = explosion(".",$temptarget);
foreach($detail als $v)
{
if($v > 255 || $v < 0)
{
$f = 0;
brechen;
}
}
}
sonst $f =0;
return $f;
}
Funktion _GetInfo($tempserver)
{
$this->msg = '';
if(!$sock = fsockopen($tempserver, 43, $num, $error, $this->timeout))
{
unset($sock);
$this->msg = „Zeitüberschreitung beim Herstellen der Verbindung zu $tempserver (Port 43)“;
}
anders
{
fputs($sock, "$this->targetn");
$this->msg .= "<p>IP Whois-Informationen für <b>".$this->target."</b><br><br>";
$this->msg .= "---------------------------- ---------<BR>";
while (!feof($sock))
$this->msg .= fgets($sock, 10240);
$this->msg .= "---------------------------- ---------<BR></p>";
}
fclose($sock);
return nl2br($this->msg);
}
Funktion _CheckInfo($tempmsg)
{
if(eregi("whois.ripe.net", $tempmsg))
{
$this->server = "whois.ripe.net";
Rückgabe 1;
}
elseif(eregi("whois.apnic.net", $tempmsg))
{
$this->server = "whois.apnic.net";
Rückgabe 1;
}
elseif(eregi("whois.lacnic.net", $tempmsg))
{
$this->server = "whois.lacnic.net";
Rückgabe 1;
}
sonst 0 zurückgeben;
}
}
?>
调用
<?php
include './class.php';
$target = isset($_GET['ip'])?gethostbyname($_GET['ip']):'NULL';
if('NULL' == $target || '' == $target)$result = '<p>Bitte geben Sie eine IP-Adresse ein<br></p>';
anders
{
$whois = neue IPWhois($target);
//$result = "IP Whois-Informationen für <b>".$_POST['ip']."</b><br><br>";
$result = $whois->ShowInfo();
}
echo $result;
?>