0

我试图这样做,但它给出了这个错误: Fatal error: Class 'Piwik_FrontController' not found in C:\wamp\www\aqar2\piwik.php on line 11

我的网站路径是:localhost/aqar2 我的 piwik 路径是:localhost/aqar2/piwik

<?php
// if you don't include 'index.php', you must also define PIWIK_DOCUMENT_ROOT
// and include "libs/upgradephp/upgrade.php" and "core/Loader.php"
define('PIWIK_INCLUDE_PATH', realpath('.localhost/aqar2/.'));
define('PIWIK_USER_PATH', realpath('.localhost/aqar2/.'));
define('PIWIK_ENABLE_DISPATCH', false);
define('PIWIK_ENABLE_ERROR_HANDLER', false);
define('PIWIK_ENABLE_SESSION_START', false);
require_once PIWIK_INCLUDE_PATH . "piwik/index.php";
require_once PIWIK_INCLUDE_PATH . "piwik/core/API/Request.php";
Piwik_FrontController::getInstance()->init();
// This inits the API Request with the specified parameters
$request = new Piwik_API_Request('
        method=UserSettings.getResolution
        &idSite=1
        &date=yesterday
        &period=week
        &format=XML
        &filter_limit=3
        &token_auth=&token_auth=a688c5c011dac27cf125eaa84f95e59b
');
// Calls the API and fetch XML data back
$result = $request->process();
echo $result;
?>
4

2 回答 2

4

If your php file is in localhost/aqar2/then the path must be define('PIWIK_INCLUDE_PATH', realpath('piwik/'));

I know you probably fixed it already so i am adding that for whoever may need it...

于 2012-10-16T12:09:14.293 回答
0

该错误是由于正在使用(或引用)类但尚未加载的结果。这可能是因为您的 PIWIK_INCLUDE_PATH 设置不正确,或者您需要自己包含该类。

首先,仔细检查您设置的值PIWIK_INCLUDE_PATH是否是系统上的有效路径,可能是:

if (is_dir(PIWIK_INCLUDE_PATH)) {
  exit('IT IS A REAL PATH');
} else {
  exit('IT IS NOT A REAL PATH');
}

如果事实证明它不是一条真正的路径,也许你应该看一下“。”。'localhost' 目录上的点前缀。你不是故意用的realpath('localhost/aqar2/piwik');。如果这确实有效,你还应该看看你是如何设置PIWIK_USER_PATH.

如果这不起作用,您应该自己考虑包含 FrontController 类,但这可能意味着您还必须手动包含该类的所有依赖项。要手动包含该类,请使用include(PIWIK_INCLUDE_PATH . '/core/FrontController.php');

您尝试使用的目录结构似乎是错误的,也许您应该修改它并尝试将所有文​​件保留在localhost目录下。

于 2012-02-11T10:25:17.117 回答