0

我遇到的最奇怪的 PHP 问题。有一些 PHP 代码只在某些机器上运行。

客户打电话来解决问题。文件名是 portada.html

我以前看过这个网站,它运行良好。我知道 PHP 代码通常在 .php 文件上运行,但这个过去在这个 .html 文件上运行得很好。也许是一些 apache conf 或他们以前的 Web 开发人员做过的事情。

因此,现在当您使用某些机器时它运行良好,但在其他机器上却无法运行。任何人都知道为什么会发生这样的事情?

这是运行不正常的代码。

<script language="" type="text/javascript">
var so = new SWFObject("gallery.swf?xmlPath=galleries/gallery__something_<?
  $sql_conf="select galeria_something from ct_conf";
  $res_conf=mysql_query($sql_conf);
  $row_conf=mysql_fetch_assoc($res_conf);
  echo $row_conf["galeria_something"];
?>.xml", "something", "320", "238", 7, "");
so.addParam("allowScriptAccess", "sameDomain")
so.addParam("quality", "high");
so.addParam("scale", "noscale");
so.write("renta");
</script>

代码在 Google Chrome 上执行,而不是在 Firefox 上

4

3 回答 3

1

你说文件名是portada.html。如果这是正确的并且它没有保存为 .php 文件,那么您还需要确保服务器将 .html 文件识别为需要由 PHP 解释器处理。您可以通过添加以下内容从 .htaccess 文件中执行此操作:

AddType application/x-httpd-php .html
于 2013-08-02T03:01:49.723 回答
0

不能肯定地说,但这可能与您使用短标签有关,短标签通常默认禁用。尝试使用<?php而不仅仅是<?.

此外,您的查询在 Linux 服务器上可能区分大小写,但在 Windows 服务器上不区分大小写。

于 2013-08-02T02:55:09.660 回答
0

为了使您的代码在许多机器上兼容:

  1. 不要使用短标签<?,使用完整标签<?php
  2. 不要使用不推荐使用的函数,例如mysql_query,使用mysqli_queryhttp://www.php.net/manual/en/book.mysqli.php
  3. 打开完整的错误报告以检查兼容性:ini_set('display_errors', 1); error_reporting(E_ALL);
于 2013-08-02T02:55:40.200 回答