PHP将文件添加到

时间:2016-04-07 00:45:18

标签: php html templating

我是PHP的新手,我的主要问题是,在运行带有MAMP的本地服务器时,网站页面工作正常,但是当托管在远程仓库上时,整个header.php的内容被填充到{{1而不是<body>。我的代码如下:

<head>

当我在localhost上加载它时,头部出现在它应该的位置,一切都很好,当我在网上看到它时,代码看起来像这样;

  <?php
  $pageName = "This is my page title";
  $isHomeStyle = true;
  $mainjs = true; 
  $flexisel = false;
  $lazyload = false; 

  include("includes/header.php");
  include("includes/navbar.php");?>

<body>
...
</body>

显然那不对,我错过了什么?

编辑:head.php文件如下:

<head></head>
<body>
    <div class="navbar"></div>
    <title>This is my Page title</title>
    <link rel="stylesheet" href="project/css/home.css" />
    <link rel="stylesheet" href="project/css/styles.css" />

...

<body>

问题已解决问题在于我使用速记标签,显然它并不是完全支持所有地方。谢谢大家!

2 个答案:

答案 0 :(得分:2)

您没有在HTML中关闭<head>。有些浏览器(肯定是Chrome)会尝试智能地操作DOM来修复语法HTML错误。在这种情况下,我相信您的浏览器会自动将包含的输出直接放入正文中。在开始</head>标记之前添加结束<body>标记,您应该没问题。另外,我非常确定你的include("includes/navbar.php");应该在实际的身体中。

答案 1 :(得分:1)

根据PHP Pear Docs

  

始终使用<?php ?>来分隔PHP代码,而不是<? ?>简写。这是PEAR合规性所必需的,也是在不同操作系统和设置中包含PHP代码的最便携方式。

这可能是因为它适用于localhost但不适用于您的在线仓库。

另外,请务必将include("includes/navbar.php");移到<body>标记内。