SQL无法执行SSI文件的PHP页面

时间:2018-07-06 10:38:45

标签: php mysql ssi

我有一个php站点,它使用SSI文件作为页眉,页脚,菜单等。当它们从我的PHP页面链接到其本地文件夹目录时,所有文件均正常运行。

例如:一个PHP页面在页面上编码为<?php require_once('ssi/menu.shtm'); ?>,并正确显示了所需的菜单。

这些页面还具有从SQL dbase馈送的数据,以根据用户“单击”的内容来构建页面。这也可以正常工作。

每个页面现在都需要一个不同的菜单,我已将其添加到其他SQL字段中。 <?php require_once('ssi/menu.shtm'); ?>现在出现在其所需页面的相关SQL字段中。

问题:当SSI来自SQL时,它不会在浏览器的页面上执行或显示。如果我在浏览器中查看页面的源代码,则其代码编写与SQL字段中的代码完全相同,但不执行SSI。如果我在“ Firefox”中查看源代码,则它的<?php require_once('ssi/menu.shtm'); ?>用斜体和红色显示-当我将鼠标悬停在它上面时,会弹出以下消息:Saw "<?". Probable cause: Attempt to use an XML processing instruction in HTML. (XML processing instructions are not supported in HTML.)

我知道这可能是一个快速解决方案,但是到目前为止,我一直在自学这一切,并且已经为此苦苦挣扎了许多周。

1 个答案:

答案 0 :(得分:1)

如果浏览器返回<?php,则表示您的PHP脚本未执行,并以纯文本或html内容返回。您的问题出在没有将其作为PHP脚本处理的Web服务器。

由于SSI(SQL管理SSI ?,在此上下文中不清楚),如果您以任何方式尝试包含PHP文件而不通过PHP / PHP-CGI运行它们,则将不起作用。