本文目录一览:
- 1、PHP+MYSQL 如何准确实现页面访问统计次数
- 2、PHP+MySQL如何统计数据库容量?
- 3、php mysql 数据按月统计 没有的月份怎样补0
- 4、如何用PHP统计mysql数据表里指定字段的内容的总数
PHP+MYSQL 如何准确实现页面访问统计次数
分两种情况,一种是前置页面统计,这个时候统计发送在点击的时候,适用于这个链接是广告链接,或者其他链接。第二种,是页面打开加入统计,这种适用于SEO或者其他的需要,统计当前页面到底有多少点击率,不受前置页面影响。
在链接里面加一个hook。比如
a href="页面链接" onclick="countHit(this)"链接文字/a
然后定义一个js函数
function countHit(obj){
var url = $(obj).attr('href');
//这里我使用jq,以链接为标准。当然对于广告可以以
//广告id为统计 的标准
$.ajax({
url : '你作为统计的php页面地址';
type : 'post',//使用post是防止浏览器直接输入这个地址而被刷
data:{link:url}//把链接地址post传过去
});
}
在php页面
$link = addslashes($_GET['link']);//安全处理下,让link能正常存入
//接下来做有效性判断,这里省略
$query = mysql_query("SELECT 1 FROM `统计表` WHERE `link`='$link'");
$has = mysql_fetch_array($query);
if($has){
//当前存在统计
mysql_query("UPDATE `统计表` SET hits=hits+1 WHERE `link`='$link'");
}else{
mysql_query("INSERT INTO `统计表` (link,hits) VALUE('$link','1')");
}
这样就完成了统计内容
当前页面统计
一般这种统计为某种信息内容的统计,我这里假设是某一条新闻的统计,这个信息里面有个hits字段作为统计
只要在php页面里面加上
mysql_query("UPDATE `新闻表` SET hits=hits+1 WHERE `id`='新闻id'");
这一句就可以完成统计了
PHP+MySQL如何统计数据库容量?
要想知道每个数据库的大小的话,步骤如下:
1、进入information_schema
数据库(存放了其他的数据库的信息)
use
information_schema;
2、查询所有数据的大小:
select
concat(round(sum(data_length/1024/1024),2),'MB')
as
data
from
tables;
3、查看指定数据库的大小:
比如查看数据库home的大小
select
concat(round(sum(data_length/1024/1024),2),'MB')
as
data
from
tables
where
table_schema='home';
4、查看指定数据库的某个表的大小
比如查看数据库home中
members
表的大小
select
concat(round(sum(data_length/1024/1024),2),'MB')
as
data
from
tables
where
table_schema='home'
and
table_name='members';
php连接数据库服务器,然后选择使用的数据库名称为information_schema,然后执行查询就行了。看你问的这个问题应该不会不知道用php访问数据库吧。
如果你权限不够的话可能只能对特定的数据库的信息进行查询。
php mysql 数据按月统计 没有的月份怎样补0
没有的月份是不是没有数据记录,原始表中如果有相应月份的时间,并且estimated_cost字段数据是0,这句话应该能显示。
如果没有9月份的addtime的记录,肯定搜不出来。
但是在数据库中添加一个为0的记录又没有什么意义,所以如果要显示0,可以用php操作Select的结果
【思路:将结果存入数组,对month排序,从数组第一个月份开始,到数组中最后一个月份为止进行循环,碰到没有的月份在数组中插入对应月份和0值】
如何用PHP统计mysql数据表里指定字段的内容的总数
mysql_connect("localhost","root","123456") or
die("打开数据库服务器失败!"); //连接数据库
mysql_select_db("a") or
die("打开数据库a失败!"); //打开数据库,a为数据库名
$sql = "select id from b"; //id为字段名,b为表名
$result=mysql_query($sql);
if(mysql_query($sql)) //判断$sql语句是否执行
{
$num=mysql_num_rows($result); //取得包含id字段记录的行数
echo "一共有".$num."个id"; }思想就是:根据含有ID的记录(数据库里一行内容称为一条记录)条数来确定ID的个数