5

问题简述:当我从index.html
文件 的页脚标签中“包含”它时,PHP 脚本似乎可以在我的本地 Web 服务器上运行,但当我将它上传到我的网站时它却不起作用。请注意,我已确保所有路径都正确,并且脚本文件具有自己的 php 标签等。

详细的问题描述:
是的,我是 PHP 脚本的新手,是的,这个问题的变体可能已经被问过。我读过的一些问题的答案已经注意到 php 脚本文件的路径不正确。我检查了所有路径并确认它们确实正确(包括网络托管服务器上的路径)。此外,我已经成功地让脚本在运行 Apache2 和 PHP5 的本地服务器上运行,但在将其上传到我的网站时没有成功。

本质上,我正在尝试实现一个命中计数器脚本,该脚本是从 Stack Overflow 帖子中获得的,标签为 Vinaora 等简单网站的访客计数器。调用 php 脚本的代码看起来像这样......

  <页脚>
    <!-- 执行命中计数器脚本 -->
    <?php include($_SERVER['DOCUMENT_ROOT'].'/php/hitcounter.php'); ?>
  </页脚>

对于像我这样的人,我无法弄清楚为什么它在网络托管服务器上不起作用。我尝试过调用脚本的其他组合,例如,

  <页脚>
    <!-- 执行命中计数器脚本 -->
    <?php include('./php/hitcounter.php'); ?>
  </页脚>

和,

  <页脚>
    <!-- 执行命中计数器脚本 -->
    <?php include(dirname(__FILE__).'/php/hitcounter.php'); ?>
  </页脚>

所有组合似乎都适用于我的本地网络服务器,但不适用于网站!另请注意,我使用其他方法(甚至在 Web 托管服务器上)调用其他 PHP 脚本没有问题,例如。

    <form id="form-query" onsubmit="this.checkValidity();" action="./php/contact.php" method="post">

任何意见/建议将不胜感激。

4

5 回答 5

6

你有任何 PHP 错误吗?

首先,您需要激活错误报告。

把这个放在你的文件之前

ini_set('display_errors',1);
error_reporting(-1);

PHP 应该告诉你发生了什么。

如果您没有看到任何内容,请将文件名 index.html 更改为 index.php,然后重试。

于 2013-11-09T04:15:50.183 回答
1

也许您在包含路径中使用了“\”

错误的:

<?php include 'includes\header.php'; ?>

您应该使用“/”来工作。

当前的:

<?php include 'includes/header.php'; ?>

于 2018-01-23T21:04:17.887 回答
0

有时可能是由于套管。检查你是否在命名时大写。在某些服务器上 Index.php 不等于 index.php

于 2018-04-12T08:10:53.300 回答
-1

您可以尝试将“包含”代码直接粘贴到调用代码中。也许是包含的代码本身行为不端......

于 2013-11-09T04:22:14.983 回答
-2

首先,您正在做完全不正确的事情。

当我从 index.html 的页脚标记中“包含”它时,PHP 脚本似乎可以在我的本地 Web 服务器上运行

完全错了

没有在 html 文件中嵌入 php 文件(除了 mod_rewrite ...)。要解释 PHP 脚本,您必须(在 99% 的情况下)使用 php 后缀。通过这种方式,您可以让 PHP 将其与常规 PHP 区分开来并发送到 php 解释器。

简单地说 - 创建这个文件(a.html):

<body>
abcd<?php echo 'efgh';?>
</body>

并在浏览器中查看结果 - 使用 .../a.html

你看到了什么?

A B C D

并不是

abcdefgh

最重要的是,您总是必须拥有 php,而不是相反。如果不正确,请解决此问题或更新您的问题。

于 2013-11-09T08:33:35.410 回答