长沙北大青鸟作者:科泰校区匿名
数据表建立的sql语句:
CREATE TABLE `count`.`count` (
`id` int(100) NOT NULL auto_increment,
`ip` varchar(100) NOT NULL default '0',
`add` varchar(100) NOT NULL default '0',
`os` varchar(100) NOT NULL default '0',
`browse` varchar(100) NOT NULL default '0',
`time` datetime NOT NULL default '0000-00-00 00:00:00',
PRIMARY KEY (`id`)
) TYPE=MyISAM
index.php
用于现实最近的若干条信息!
<?
session_start();
?>
<? echo "<div align='center'>";include ("ip.php");echo "</div>";?>
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<table width="776" border="0" align="center" cellpadding="0" cellspacing="00">
<tr>
<td valign="top"><p> <font color="#000033">网站访问量统计数据:</font></p>
<p><font color="#000033">(您的IP地址是:<font color="#FF0000"><?php echo $ip; ?><font color="#000033">,</font></font>您来自<font color="#FF0000"><?php echo $add; ?><font color="#000033">,</font></font>您的浏览器为<font color="#FF0000"><?php echo $browse; ?><font color="#000033">,</font></font>操作系统<font color="#FF0000"><?php echo $os; ?><font color="#000033">)</font></font></font></p>
<table width="100%" border="0" cellpadding="0" cellspacing="00">
<tr>
<td colspan="5"><font color="#FF0000">最近的10条访问信息</font></td>
</tr>
<tr>
<td width="20%"><div align="left"><font color="#FF0000">IP</font></div></td>
<td width="20%"><div align="left"><font color="#FF0000">操作系统</font></div></td>
<td width="20%"><div align="left"><font color="#FF0000">浏览器类型</font></div></td>
<td width="20%"><div align="left"><font color="#FF0000">地址</font></div></td>
<td width="20%"><div align="left"><font color="#FF0000">时间</font></div></td>
</tr>
<?
$link=mysql_connect("localhost","root","");
$db=mysql_select_db("count",$link);
$query=mysql_query("select * from count order by time desc limit 10");
while($array=mysql_fetch_array($query))
{
?>
<tr valign="middle">
<td> <font color="#000066"><?php echo $array[ip]; ?> </font> <div align="left"></div></td>
<td> <font color="#000066"><?php echo $array[os]; ?> </font> <div align="left"></div></td>
<td><font color="#000066"><?php echo $array[browse]; ?> </font> <div align="left"></div></td>
<td><font color="#000066"><?php echo $array[add]; ?> </font> <div align="left"></div></td>
<td><font color="#000066"><?php echo $array[time]; ?> </font> <div align="left"></div></td>
</tr>
<?
}
?>
</table>
</td>
</tr>
</table>
</body>
</html>
counter.php
采集信息和纪录信息
<?
session_start();
function crain_ip()//取得浏览客户的真实IP地址----crain Thursday November 14, 2002 3:43
{
$ip=getenv('REMOTE_ADDR');
$ad=getenv('HTTP_X_FORWARDED_FOR');
if(($ad!= "")&&($ad!="unknown"))
{
$ip=$ad;
}
return $ip;
}
function crain_found_add($ip)//探察IP来源----crain Thursday November 14, 2002 4:43
{
if ($ip=="")
{
$ip=getenv('REMOTE_ADDR');
}
$ip_client=explode(".",$ip);
$ip_client_total=$ip_client[0]*1000000000+$ip_client[1]*1000000+$ip_client[2]*1000+$ip_clien
t[3];
$ip_client[0]=intval($ip_client[0]);
if(file_exists("../count/ip_datebase/$ip_client[0].txt"))
{
$ip_datebase="../count/ip_datebase/$ip_client[0].txt";
}
else {
$ip_datebase="../count/ip_datebase/0.txt";
}
$add_jigou="";
$add_country="";
$add_last="";
$ipdata=file($ip_datebase);
for ($i=0;$i<count($ipdata);$i++)
{
$ip_date_first=explode("|",$ipdata[$i]);
$add_jigou=$ip_date_first[3];
$add_country=$ip_date_first[2];
$ip_date_second=explode(".",$ip_date_first[0]);
$ip_date_third=explode(".",$ip_date_first[1]);
$ip_start=$ip_date_second[0]*1000000000+$ip_date_second[1]*1000000+$ip_date_second[2]*1000+$
ip_date_second[3];
$ip_end=$ip_date_third[0]*1000000000+$ip_date_third[1]*1000000+$ip_date_third[2]*1000+$ip_da
te_third[3];
if(($ip_client_total<=$ip_end) && ($ip_client_total>=$ip_start))
{
$add_last=$add_country.$add_jigou;
break;
}
}
if ($add_jigou=="")
{
$add_last="未探知区域";
}
return $add_last;
}
function crain_browse_info()
{
$browser="";$browserver="";
$Browsers =array("Lynx","MOSAIC","AOL","Opera","JAVA","MacWeb","WebExplorer","OmniWeb");
$Agent = $GLOBALS["HTTP_USER_AGENT"];
for ($i=0; $i<=7; $i++) {
if (strpos($Agent,$Browsers[$i])) {
$browser = $Browsers[$i];
$browserver ="";
}
}
if (ereg("Mozilla",$Agent) && !ereg("MSIE",$Agent)) {
$temp =explode("(", $Agent); $Part=$temp[0];
$temp =explode("/", $Part); $browserver=$temp[1];
$temp =explode(" ",$browserver); $browserver=$temp[0];
$browserver =preg_replace("/([d.]+)/","1",$browserver);
$browserver = " $browserver";
$browser = "Netscape Navigator";
}
if (ereg("Mozilla",$Agent) && ereg("Opera",$Agent)) {
$temp =explode("(", $Agent); $Part=$temp[1];
$temp =explode(")", $Part); $browserver=$temp[1];
$temp =explode(" ",$browserver);$browserver=$temp[2];
$browserver =preg_replace("/([d.]+)/","1",$browserver);
$browserver = " $browserver";
$browser = "Opera";
}
if (ereg("Mozilla",$Agent) && ereg("MSIE",$Agent)) {
$temp = explode("(", $Agent); $Part=$temp[1];
$temp = explode(";",$Part); $Part=$temp[1];
$temp = explode(" ",$Part);$browserver=$temp[2];
$browserver =preg_replace("/([d.]+)/","1",$browserver);
$browserver = " $browserver";
$browser = "微软探索者(IE)";
}
if ($browser!="") {
$browseinfo = "$browser$browserver";
}
else {
$browseinfo = "未知的浏览器";
}
return $browseinfo;
}
function crain_os_info() //crain修改前人程序于November 14, 2002
{
$os="";
$Agent = $GLOBALS["HTTP_USER_AGENT"];
if (eregi('win',$Agent) && strpos($Agent, '95')) {
$os="Windows 95";
}
elseif (eregi('win 9x',$Agent) && strpos($Agent, '4.90')) {
$os="Windows ME";
}
elseif (eregi('win',$Agent) && ereg('98',$Agent)) {
$os="Windows 98";
}
elseif (eregi('win',$Agent) && eregi('nt 5.0',$Agent)) {
$os="Windows 2000";
}
elseif (eregi('win',$Agent) && eregi('nt 5.1',$Agent)) {
$os="Windows XP";
}
elseif (eregi('win',$Agent) && eregi('nt',$Agent)) {
$os="Windows NT";
}
elseif (eregi('win',$Agent) && ereg('32',$Agent)) {
$os="Windows 32";
}
elseif (eregi('linux',$Agent)) {
$os="Linux";
}
elseif (eregi('unix',$Agent)) {
$os="Unix";
}
elseif (eregi('sun',$Agent) && eregi('os',$Agent)) {
$os="SunOS";
}
elseif (eregi('ibm',$Agent) && eregi('os',$Agent)) {
$os="IBM OS/2";
}
elseif (eregi('Mac',$Agent) && eregi('PC',$Agent)) {
$os="Macintosh";
}
elseif (eregi('PowerPC',$Agent)) {
$os="PowerPC";
}
elseif (eregi('AIX',$Agent)) {
$os="AIX";
}
elseif (eregi('HPUX',$Agent)) {
$os="HPUX";
}
elseif (eregi('NetBSD',$Agent)) {
$os="NetBSD";
}
elseif (eregi('BSD',$Agent)) {
$os="BSD";
}
elseif (ereg('OSF1',$Agent)) {
$os="OSF1";
}
elseif (ereg('IRIX',$Agent)) {
$os="IRIX";
}
elseif (eregi('FreeBSD',$Agent)) {
$os="FreeBSD";
}
if ($os=='') $os = "Unknown";
return $os;
}
?>
<?
if(!session_is_registered(counttime))
{
//取得浏览者信息
$ip=crain_ip();
$add=crain_found_add($ip);
$browse=crain_browse_info();
$os=crain_os_info();
$time=date("Y-m-d H:i").time();
//以下为数据库操作部分!
$link=mysql_connect("localhost","root","");
$db=mysql_select_db("count",$link);
$query="INSERT INTO `count` (`os`, `add`, `browse`, `time`, `ip`) VALUES ('$os', '$add',
'$browse', '$time', '$ip')";
mysql_query($query)or die("can't insert!");
$query=mysql_query("select * from count");
$counttime=mysql_num_rows($query);
session_register(counttime);
mysql_close($link);
}
?>
ip_query.php
IP地址查询部分!
<?
if($Submit)
{
if($ipquery)
{
function found_add($ip)//探察IP来源----crain Thursday November 14, 2002 4:43
{
if ($ip=="")
{
$ip=getenv('REMOTE_ADDR');
}
$ip_client=explode(".",$ip);
$ip_client_total=$ip_client[0]*1000000000+$ip_client[1]*1000000+$ip_client[2]*1000+$ip_client[3];
$ip_client[0]=intval($ip_client[0]);
if(file_exists("../count/ip_datebase/$ip_client[0].txt"))
{
$ip_datebase="../count/ip_datebase/$ip_client[0].txt";
}
else {
$ip_datebase="../count/ip_datebase/0.txt";
}
$add_jigou="";
$add_country="";
$add_last="";
$ipdata=file($ip_datebase);
for ($i=0;$i<count($ipdata);$i++)
{
$ip_date_first=explode("|",$ipdata[$i]);
$add_jigou=$ip_date_first[3];
$add_country=$ip_date_first[2];
$ip_date_second=explode(".",$ip_date_first[0]);
$ip_date_third=explode(".",$ip_date_first[1]);
$ip_start=$ip_date_second[0]*1000000000+$ip_date_second[1]*1000000+$ip_date_second[2]*1000+$ip_date_second[3];
$ip_end=$ip_date_third[0]*1000000000+$ip_date_third[1]*1000000+$ip_date_third[2]*1000+$ip_date_third[3];
if(($ip_client_total<=$ip_end) && ($ip_client_total>=$ip_start))
{
$add_last=$add_country.$add_jigou;
break;
}
}
if ($add_jigou=="")
{
$add_last="未探知区域";
}
return $add_last;
}
$address=found_add($ipquery);
}
}
?>
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<form name="form1" method="post" action="ip_query.php">
<p align="center"> 您要查询的IP地址:
<input name="ipquery" type="text" id="ip" value="<?
if($ipquery=="")
{
$ipquery=getenv('REMOTE_ADDR');
}
echo $ipquery;
?>">
<input type="submit" name="Submit" value="查看一下">
</p>
<table width="450" border="0" align="center" cellpadding="0" cellspacing="00">
<tr>
<td> <div align="justify"><font color="#330066"> 您查询的IP地址对应的地理位置为<font color="#FF0000">:<? echo $address; ?></font><br>
<?
//$cmd="ipconfig/all";
//system($cmd, $list);
//for ($i=0;$i < count($list);$i++)
//{
//print $list[$i]."<br>";
//}
?>
</font></div></td>
</tr>
</table>
</form>
</body>
</html>
下面有几个文本文件记录IP的物理地址,有需要的请与我查询!
我的电子邮件onlyphp@yahoo.com.cn
做出来的东西~~~缺苦于没有地方放!人!真的有不得志的时候!