我的网站上有一些文件(.zip和.pkg)可供下载。我想获得使用Piwik的下载统计数据。
我使用'文件名包含FileToDownload.zip'标准为每个文件创建了“下载文件”目标。不幸的是,目标没有跟踪,因为当用户点击文件链接时没有执行PHP或JavaScript代码。
我为每个链接添加了oncick="_paq.push(['trackGoal', NNN]);"
。现在是时候检测我应该使用哪个目标号码(NNN)来下载每个文件。
如何为每个下载链接获得正确的目标数量?如何在文件和目标列表发生变化的情况下自动执行此过程?
答案 0 :(得分:0)
以下是将两个数据库连接在一起以生成自动JavaScript onclick
事件的PHP代码示例:
// Open website database and get list of files to download
$_db = @mysqli_connect($_dbhost, $_dbuser, $_dbpassword, $_dbname);
$data = @mysqli_query($_db, "SELECT * FROM downloads");
if ($data && @mysqli_num_rows($data)) while ($row = @mysqli_fetch_assoc($data))
{
$filename = $row['filename'];
// Open Piwik database and get goal for this file
$_pdb = @mysqli_connect($_pdbhost, $_pdbuser, $_pdbpassword, $_pdbname);
$pdata = @mysqli_query($_pdb, "SELECT idgoal FROM piwik_goal WHERE match_attribute='file' AND pattern LIKE'%$filename' AND deleted=0");
if ($pdata && $row = @mysqli_fetch_assoc($pdata))
{
$goal = $row['idgoal'];
$onclick = " onclick=\"_paq.push(['trackGoal', $goal]);\"";
}
echo "<a href="downloads/$filename"$onclick>$filename</a>";
}