5

我最近将我的网站格式更改为 php(而不是 html),即我用 .php 扩展名重命名了所有 HTML 页面,并用我的 .htaccess 文件修复了链接。

我需要使用 Google 分析跟踪我的新 php 页面,因此我创建了一个单独的 php 文件,其中包含 Google 的 javascript 片段。我将它放在我网站的根目录,并在标签后使用以下代码将我的每个 php 标签链接到它<body>

<?php include_once("analyticstracking.php") ?>

我的问题是这似乎只适用于我的 index.php 页面。我的所有其他页面都找不到analyticstracking.php(在 Dreamweaver 中它说“'analyticstracking.php'不在本地磁盘上。获取”)

如果我将链接(通过添加“/”)更改为:

<?php include_once("/analyticstracking.php") ?>

然后我的所有页面都可以找到该文件,但谷歌分析似乎没有跟踪我的活动。

我正在使用“分析 - 实时”来测试这一点。

这是我的网址 www.brp-architects.com。(目前使用

<?php include_once("/analyticstracking.php") ?>

因为此代码带有“/”,允许我的所有页面找到我的跟踪代码 php 文件)。

我这样做的全部原因是我可以使用一段 PHP 代码通过获取代理服务器 ip 来检索我的网站访问者的 IP 地址:

<?
if (getenv(HTTP_X_FORWARDED_FOR)) {
    $ip_address = getenv(HTTP_X_FORWARDED_FOR);
} else {
    $ip_address = getenv(REMOTE_ADDR);
}

?>

感谢您的回复!

这是我的 analyticstracking.php 文件中的跟踪片段:

<script type="text/javascript">

var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-5434990-2']);
  _gaq.push(['_trackPageview']);
  setTimeout('_gaq.push([\'_trackEvent\', \'NoBounce\', \'Over 30 seconds\'])',30000);

(function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();

</script>

我的跟踪代码的链接直接位于开始的正文标签下:

<?php include_once("/analyticstracking.php") ?>
4

2 回答 2

4

如果它适用于index.php,那么analyticstracking.php脚本就可以了。

可能导致这种情况的原因是您将其包含在其他脚本中的方式。

只需确保该脚本的路径在其他脚本上是正确的。
确保包括这样的:

include($_SERVER['DOCUMENT_ROOT'].'PATH-TO-SCRIPT/analyticstracking.php');
于 2012-07-10T10:23:23.897 回答
0

您可以通过多种方式解决此问题。首先,您可以更改 include_path 变量 http://il.php.net/manual/en/ini.core.php#ini.include-path

其次,您可以使用getcwd()在 index.php 中初始化自己的全局变量

于 2012-07-10T10:22:03.727 回答