在
http://blog.chinaunix.net/u/5391/showart_275272.html 这篇文章里我们实现了一个简单的文本计数器。现在,我们做一下简单改进,把这个文本计数器改为图形计数器。
要实现图形计数器,其实很简单,就是把要显示的文本数字,改为对应的图形数字,这里,我们需要准备10张从0至9这10张数字图片,比如从0.gif ~ 9.gif。
下面是实现代码:
// gcounter.php
$server_name = "localhost:6033";
$username = "root";
$password = "root";
$database = "jh";
$conn = mysql_connect($server_name, $username, $password);
if ( !$conn )
{
die ("Could not connect server $server_name\n");
exit();
}
//------------------------------------------------
$ip = getenv("REMOTE_ADDR");
$strsql = "SELECT (TO_DAYS(NOW()) - TO_DAYS(`visit_time`))*24*3600+
TIME_TO_SEC(NOW())-TIME_TO_SEC(`visit_time`)
AS dif_sec
FROM counter
WHERE `visit_ip` = '$ip'
ORDER BY dif_sec ASC";
$result = mysql_db_query($database, $strsql, $conn)
or die("Query error:".mysql_error());
$row = mysql_fetch_row($result);
$AddCnt = false;
if ($row)
{
if ( $row[0] > 600 )
$AddCnt = true;
}
else
$AddCnt = true;
if ($AddCnt)
{
$strsql = "INSERT INTO `counter` ( `visit_ip` , `visit_time` )
VALUES ('$ip', NOW( ))";
$result = mysql_db_query($database, $strsql, $conn);
}
//------------------------------------------------------
$strsql = "SELECT COUNT(*) FROM `counter` ";
$result = mysql_db_query($database, $strsql, $conn);
$row = mysql_fetch_row($result);
// 这里是增加的部分,将取得的流量统计数字$row[0]依次取出来
// 换成对应的gif图片,然后将这些图片连接起来显示就行了
for ($i = 0; $i < strlen($row[0]); $i++ )
{
$digit = substr($row[0], $i, 1);
$str .= "
";
}
//print "
开站至今,共有 $row[0] 人访问本站.
";
mysql_close($conn);
?>
图形计数器 // $str为最终的数字图片显示的html代码
开站至今,共有人访问本站。
阅读(768) | 评论(0) | 转发(0) |