ホームページ  >  記事  >  バックエンド開発  >  PHP統計記事ランキング例_PHPチュートリアル

PHP統計記事ランキング例_PHPチュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:37:04944ブラウズ

コードをコピー コードは次のとおりです:

/**
*
* 月、週、日別の統計ソフトと記事ランキング
*
* $field_id (記事ID)
*/
//月間、週間、日間のランキングの数え方
require_once(dirname( __FILE__)."/. ./include/common.inc.php");
function countdown($field_id){
date_default_timezone_set('Asia/Shanghai') //デフォルトのタイムゾーンを設定します
global $dsql;
$ re_total = 1;
$tableName = 'dede_tongji';
$nowDateArray = getdate(time());
$sql_tongji = "select * from `$tableName` where aid=$field_id";
$rs = $dsql-> ;ExecuteNoneQuery2($sql_tongji);
//この記事情報が存在しない場合は、新しい記事情報を挿入します
if($rs <= 0){
//カラム ID 値を取得します
$sql_typeid = "select typeid from ` dede_archives` where id=$field_id";
$t_row = $dsql->GetOne($sql_typeid);
$query = " INSERT INTO `$tableName` VALUES($field_id,$t_row[typeid],1,1, 1,1,$nowDateArray[0] ); ";
$dsql->ExecNoneQuery($query);
}else{
$result = $dsql->GetOne($sql_tongji);
$oldTimeStamp = $result ['lasttime']; //最後のクリック時間
$m_total = $result['m_total'];使用する 使用する 使用する 使用する 使用する アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト アウト‐‐‐‐‐ 時間

$t_total = $result['t_total'] //合計クリック数
$oldDateArray = getdate($oldTimeStamp);
//今月の統計

if($nowDateArray["year"] == $oldDateArray["year"] && $nowDateArray["mon"] == $oldDateArray["mon"]){

$m_total++;
}else {
$m_total = 1
}
;
//今週の統計

$tmpStartDate = mktime(0,0,0,$nowDateArray[ "mon"],$nowDateArray[ "mday"],$nowDateArray[ "year"]) - ($nowDateArray[ "wday " ] * 86400);

$tmpEndDate = mktime(23,59,59,$nowDateArray[ "mon"],$nowDateArray[ "mday"],$nowDateArray[ "year"]) + ((6 - $nowDateArray[ " wday"]) * 86400);
if($oldTimeStamp >= $tmpStartDate && $oldTimeStamp $w_total++
}else{
$w_total = 1;
//今日の統計
$dayStart =mktime(0,0,0,$nowDateArray[ "mon"],$nowDateArray[ "mday"],$nowDateArray[ "year"]) // その日の開始タイムスタンプ
$ dayEnd =mktime(23,59,59,$nowDateArray[ "mon"],$nowDateArray[ "mday"],$nowDateArray[ "year"]) // 一日の終わりのタイムスタンプ if($oldTimeStamp >= $ dayStart && $oldTimeStamp <= $dayEnd){

$d_total++;
}else{
$d_total = 1;
}
$t_total++;
//統計を更新します
$dsql->ExecuteNoneQuery("update $tableName set m_total=$m_total,w_total=$w_total,d_total=$d_total,t_total=$t_total,lasttime=$nowDateArray[0] where aid=$field_id");
$dsql->ExecuteNoneQuery("update dede_archives set click=$ t_total where id=$field_id");
$re_total = $t_total;
}
return $re_total;
}

countdown($aid); //メソッド呼び出し

/*//mysql テーブル構造

存在しない場合はテーブルを作成 `dede_tongji` (

`aid` int(11) NOT NULL,
`cid` smallint(5) NOT NULL,

`tid` smallint(5) NOT NULL,

`m_total` int(11) ) NOT NULL デフォルト '1',
`w_total` int(11) NOT NULL デフォルト '1',
`d_total` int(11) NOT NULL デフォルト '1',
`t_total` int(11) NOT NULL デフォルト ' 1',
`lasttime` int(12) NOT NULL,
主キー (`aid`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
*/
?>




http://www.bkjia.com/PHPjc/736801.html

www.bkjia.com

http://www.bkjia.com/PHPjc/736801.html技術記事次のコードをコピーします: ?php /*** * 統計ソフトや記事の月次、週次、日別ランキング * * $field_id (記事ID)*/ //月次、週次、当日のランキングをカウントする方法 require_once(dirname(_...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。