400-696-8028

一套全新的计数器(session控制,记录浏览者信息,IP物理地址查询)

长沙北大青鸟作者:科泰校区匿名

摘要:数据表建立的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 NU

数据表建立的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

做出来的东西~~~缺苦于没有地方放!人!真的有不得志的时候!

关于我们
公司简介
发展历程
青鸟荣誉
联系我们
加入我们
青鸟课程
BCVE视频特效课程
BCUI全链路UI设计
BCSP软件开发专业
BCNT网络工程师
启能职业教育基础课程
长沙初中生学什么
长沙高中生学什么
长沙大学生学什么