HTML忽略php标签并打印纯文本问题

时间:2013-07-11 06:27:19

标签: php html

嗨,在HTML文档中,我在其中一个div中包含了一些内容,但它只是将PHP代码打印为纯文本而忽略了php标记。这是我编码的方式。

    </form>        //just some html tags right before the php tags
    <br/>
    <br/>
    <p id="hint"></p>

<?php                 // the begining of the php tags
form();
function form(){
    print "<form method='post' action='$_SERVER[PHP_SELF]'>";
    print"<input type='text' name='species'/>"; 
    print"<input type='submit' name='submit'/>"; 
    print"</form>";

}

echo '<div id='language_information'>';
?>

  </div>
  <div style ="display:none;"id="about" title="How it works">'

以下是chrome中的inspect元素给出的内容,只是注释和纯文本

  <p id="hint"></p>
      <!--?php
form();
function form(){
    print "<form method='post' action='$_SERVER[PHP_SELF]'-->

      ";
    print"
    <input type="text" name="species"></input>
      "; 
    print"
    <input type="submit" name="submit"></input>

4 个答案:

答案 0 :(得分:2)

确保文档扩展名为.php而不是.html

在大多数服务器中,只解析具有.php扩展名的文件,因此如果您在HTML文件中使用任何PHP,其扩展名应为.php

答案 1 :(得分:2)

您说您已将文件另存为HTML文档。这就是问题所在。

Please note that the server interprets HTML and PHP files differently.

HTML文件直接发送到浏览器,而PHP文件则不是。因此,当您的文件保存为HTML时,它会直接发送到浏览器,无法解析PHP代码,从而解析输出。

最好将您的文件重新保存为PHP文档。

此外,为了将来参考,请注意即使在PHP文件中,解析顺序为

  1. PHP
  2. HTML,CSS,使用Javascript

答案 2 :(得分:0)

代码和输出不匹配,因为分隔符-->不在源代码中。

最后,它似乎不是从支持PHP的服务器运行 - 至少PHP不会被执行。尝试修复文件扩展名或在XAMPP等本地服务器中测试它,看看是否可以复制错误。

答案 3 :(得分:0)

您是通过支持PHP的XAMPP等网络服​​务器运行该页面,还是只是双击该页面并从浏览器窗口在您喜欢的浏览器中打开它?

如果您尝试让页面与PHP一起使用,则需要将其放在正确的文件夹中(例如可能是xampp / htdocs),然后导航到浏览器中的http://localhost

另外,根据您的配置,服务器可能无法解析HTML文件中的PHP代码,而只能执行PHP文件。我认为默认情况下,许多“不太严肃”的Web服务器(如XAMPP,LAMP等)会解析默认情况下抛出的任何内容,因此文件命名不应成为问题。