Beispiel #1
0
	/**
	 * PVテーブルカウントアップ処理します
	 * @param array $session セッション情報
	 * @param array $clickId クリックID(ex. c01)
	 * @see insertPv
	 * @see updatePv
	 */
	public function countUpPv($session, $clickId) {
		// クリックタイプを取得
		$type = "click";

		$this->_log->debug('get.type.pv.' . $type);
		$mediaId = $session['media_id'];

		// DB処理
		$db =& $this->_core->getDB();
		$today = date('Y-m-d');
		$name = CampaignDbTableNames::getName_PV($this->_code);
		$sql = <<<SQL
select
count(*) as cnt
from {$name}
where
reg_date=?
and media_id=?
and pv_syubetsu=?
SQL;
		$param = array($today, $mediaId, $type);
		$data =& $db->query($sql, $param);
		$count = $data[0]["cnt"];
		if ($count == 0) {
			// 初回
			$this->insertPv($session, $type);
			$this->_log->debug('db.countup.pv.insert');
		} else {
			// カウントアップ
			$this->updatePv($session, $type);
			$this->_log->debug('db.countup.pv.update');
		}
	}
Beispiel #2
0
    /**
     * PVテーブルのカウントアップします。
     * @param array $teikei 提携メディア情報
     * @param string $patternId パターンID
     */
    public function countUpLpoPv(&$teikei, $patternId)
    {
        if ($patternId == null) {
            return;
        }
        $db =& $this->_core->getDB();
        $mediaId = $teikei['media_id'];
        $ankenId = $teikei['anken_id'];
        $today = date('Y-m-d');
        $name = CampaignDbTableNames::getName_PV($this->_code);
        $sql = <<<SQL
select
count(media_id) as cnt
from {$name}
where
reg_date=?
and media_id=?
and pv_syubetsu=?
SQL;
        $syubetsu = 'lpo' . $patternId . '_' . self::DEFAULT_PV_SYUBETSU;
        $param = array($today, $mediaId, $syubetsu);
        $data =& $db->query($sql, $param);
        $count = $data[0]["cnt"];
        if ($count == 0) {
            $sql = <<<SQL
insert into {$name}
(reg_date, media_id, pv_syubetsu, anken_id, count)
values
(?, ?, ?, ?, 1)
SQL;
            $param = array($today, $mediaId, $syubetsu, $ankenId);
            $db->execute($sql, $param);
        } else {
            $sql = <<<SQL
update {$name} set
count=count+1
where reg_date=?
and media_id=?
and pv_syubetsu=?
SQL;
            $param = array($today, $mediaId, $syubetsu);
            $db->execute($sql, $param);
        }
    }
Beispiel #3
0
	/**
	 * PVテーブルへモバイルキャリア別カウントのカウントアップ
	 * @param array $teikei 提携メディア情報
	 * @param string $mob_carrier モバイルキャリア
	 */
	protected function updateDbPvMobile(&$teikei, $mob_carrier) {
		$db =& $this->_core->getDB();
		$mediaId = $teikei['media_id'];
		$today = date('Y-m-d');
		$name = CampaignDbTableNames::getName_PV($this->_code);
		$sql = <<<SQL
		update {$name} set
count=count+1
where reg_date=?
and media_id=?
and pv_syubetsu=?
SQL;
		$param = array($today, $mediaId, $mob_carrier);
		$db->execute($sql, $param);
	}
Beispiel #4
0
	/**
	 * @brief PVテーブルへの更新をします。
	 * @param array $p_session セッション情報
	 */
	protected function updateDbClick(&$p_session, $pv_type ='click') {
		$db =& $this->_core->getDB();
		$mediaId = $p_session['media_id'];
		$today = date('Y-m-d');
		$name = CampaignDbTableNames::getName_PV($this->_code);
		$sql = <<<SQL
update {$name} set
count=count+1
where reg_date=?
and media_id=?
and pv_syubetsu=?
SQL;
		$param = array($today, $mediaId, $pv_type);
		$db->execute($sql, $param);
	}