OS - nur über Javascript
Land - IP auflösen
http://redvip.homelinux.net/varios/www.ipindex.net/
Über ein 'Schnipsel' geht das wohl etwas hinaus ...
Habe das so gelöst:
Datenbanktabelle:
DROP TABLE IF EXISTS `lookup`;
CREATE TABLE `lookup` (
`ID` int(11) NOT NULL auto_increment,
`IP` varchar(250) collate latin1_german2_ci NOT NULL default '',
`D0` varchar(250) collate latin1_german2_ci NOT NULL default '',
`D1` varchar(250) collate latin1_german2_ci NOT NULL default '',
`D2` varchar(250) collate latin1_german2_ci NOT NULL default '',
`D3` varchar(250) collate latin1_german2_ci NOT NULL default '',
`D4` varchar(250) collate latin1_german2_ci NOT NULL default '',
KEY `ID` (`ID`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_german2_ci;
Script:
<?php
//DB-Verbindung herstellen ...
//Variable '$ip' wird übergeben ...
function PostToHost($host, $path, $referer, $data_to_send) {
$fp = fsockopen($host, 80);
fputs($fp, "POST $path HTTP/1.1\n"
;
fputs($fp, "Host: $host\n"
;
fputs($fp, "Referer: $referer\n"
;
fputs($fp, "Content-type: application/x-www-form-urlencoded\n"
;
fputs($fp, "Content-length: ". strlen($data_to_send) ."\n"
;
fputs($fp, "Connection: close\n\n"
;
fputs($fp, "$data_to_send\n"
;
while(!feof($fp)) {
$res .= fgets($fp, 128);
}
fclose($fp);
return $res;
}
$dat=array();
$dat[0]="";
$dat[1]="";
$dat[2]="";
$dat[3]="";
$dat[4]="";
$result=mysql_query("select * from lookup where IP='$ip'"
;
while ($r=MYSQL_FETCH_ROW($result)) {
$dat[0]=$r[2];
$dat[1]=$r[3];
$dat[2]=$r[4];
$dat[3]=$r[5];
$dat[4]=$r[6];
$foo++;
}
if($dat[2]==""
{
$data="ipaddresses=".$ip;
$x = PostToHost(
"www.formyip.com",
"/ipcountry_popup.php",
"www.formyip.com",
$data
);
$v=explode("<tr>",$x);
$k=explode(">",$v[1]);
for($t=6;$t<15;$t++) {
$con=strip_tags($k[$t]);
$con=str_replace("\n","",$con);
$con=str_replace("\t","",$con);
$con=str_replace("\r","",$con);
$con=str_replace("<BR><BR>","",$con);
$con=str_replace("<BR>","",$con);
if ($t==6)$dat[0]=str_replace(" ","&nbsp;",$con);
if ($t==8)$dat[1]=str_replace(" ","&nbsp;",$con);
if ($t==10)$dat[2]=str_replace(" ","&nbsp;",$con);
if ($t==12)$dat[3]=str_replace(" ","&nbsp;",$con);
if ($t==14)$dat[4]=str_replace(" ","&nbsp;",$con);
}
$old=$ip;
$doo++;
$return=mysql_query("insert into lookup (ID,IP,D0,D1,D2,D3,D4) values ('','$ip','$dat[0]','$dat[1]','$dat[2]','$dat[3]','$dat[4]'
"
;
}
//DB-Verbindung schliessen
?>
Wenn Du damit nicht zurecht kommst, schick' mir eine PN.
Gruss
codemonk