我正在尝试实现TinyMCE,它在我的测试平台上运行良好,但在生产服务器上,PHP正在尝试执行'<?'
文件中的一些tiny_mce.js
标记。 / p>
我有一个名为html_editor.php
的文件,它被带入每个表单,需要使用include_once
。在html_editor
内,我有以下内容:
<script type="text/javascript" src="/Public/TinyMCE/tiny_mce.js"></script>
接着是Tiny MCE初始化,但它在unexpected T_CONSTANT_ENCAPSED_STRING
的那一行失败了。
我用tiny_mce_src.js
替换了脚本文件,以找到导致问题的确切代码,它是:
html.push('<?', name, ' ', text, '?>');
我在tiny_mce_src.js
中用双引号替换单引号,这确实解决了问题,但在缩小的代码中,它们已经加倍了。
显然,我的测试和生产服务器之间的PHP配置存在差异,但我无法追踪到什么。我正在使用PHP 5.3进行测试,服务器正在运行5.2。
答案 0 :(得分:6)
为什么JavaScript文件通过PHP解释器?!
修复您的服务器配置,仅将*.php
视为PHP。如何执行此操作取决于您使用的Web服务器以及如何运行PHP;你可以粘贴你的测试和生产配置吗?
答案 1 :(得分:0)
你需要编辑php.ini并设置
short_open_tag=0
这将停止
正在处理,无论如何都是个好主意,然后让所有你的php脚本都使用