【问题标题】:All but one PHP Include File Works除了一个 PHP 包含文件之外的所有文件都有效
【发布时间】:2018-02-15 11:42:25
【问题描述】:

我有一些 HTML5 文件已转换为 PHP(学习 PHP)。我将 HTML 文档的 head、header、nav 和 footer 部分放入单独的 PHP 包含文件中。 head.php、header.php 和 nav.php 包含正在工作。页脚不是。我使用了与其他三个相同的 footer.php 路径,因为它们都位于同一个文件夹中。

页脚需要公司联系信息、版权信息(以我的名字作为版权信息的一部分)、使用条款链接(目前只是一个占位符“#”地址)和格式为 9 月星期三的当前日期2017 年 6 月 6 日,我正在使用(或尝试使用)PHP 日期函数来生成此日期。

作为 HTML5 文档,代码如下所示:

<aside class="address">
Company Name<br>
Street Address<br>
City, State Zip code<br>
Phone number<br>
Email address
</aside>

(老实说,我不知道为什么我做了 class="address" 的事情......)

页脚代码的另一半如下所示:

<p class="footer-bar">&copy; 2017 All Rights Reserved | My Name | Company Name | <a href="#">Terms of Use</a> | <span id="wbdate"></span></p>

我使用 CSS3 使地址看起来在一列中,而页脚的其余部分在第二列中,如果视图较小,则直接显示其他信息或软中断。

(如果相关,这里是 CSS3 代码:

footer {
margin-top: .5rem;
margin-left: -1rem;
padding: .5rem 1rem 1.25rem 0;
color: #7f1818;
}

footer aside {
width: 47%;
font-size: .6rem;
margin-top: -.1rem;
margin-left: 0;
padding-left: .5rem;
text-align: center;
float: left;
}

footer a {/*email address formatting*/
font-weight: bold;
color: #7f1818;
}

footer>p {
margin-top: 0;
margin-left: 0;
padding-right: 1rem;
font-size: .6rem;
text-align: center;
}

虽然理想情况下,我希望页脚保持相同的格式,但我并不反对在一行中显示地址并在下一行中显示其他信息的想法,但我没有尝试得到PHP 包含工作。

这是我在 PHP 主文档底部的内容:

<footer>
<?php include 'modules/footer.php';?>
</footer>
</body>
</html>

(我知道“模块”不是标准,但这是我暂时使用的)

footer.php 文件如下所示:

<aside class="address">
Contact Us: <br>
Street Address<br>
City, State Zipcode<br>
phone<br>
<a href="mailto:companyname@domain.com">Name</a>
</aside>
<p class="footer-bar">&copy; 2017 All Rights Reserved | Name | Company | 
<a href="#">Terms of Use</a> | <?php echo date("l", "F" "d", "Y"); ?></p>

我猜是因为其他三个包含工作正常,问题出在 footer.php 文件中的内容,但我不知道它是什么。 :(

一些精通PHP的人可以帮我弄清楚我做错了什么吗?

注意:我添加了 javascript 标签是因为在 HTML 版本中,我只是使用外部 javascript 文件使用了 Javascript 日期函数(因为不止一个页面需要该函数。

<script src="js/currdate.js"></script>

而currdate.js里面的代码是:

var currdate = new Date()
var daysnames = new Array("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday")
var monthsnames = new Array("January","February","March","April","May","June","July","August","September","October","November","December")

var tday = daysnames[currdate.getDay()],
tmonth = monthsnames[currdate.getMonth()],
tdaynum = currdate.getDate(),
tyear = currdate.getFullYear();
var fdate = tday + ", " + tmonth + " " + tdaynum + " , " + tyear
document.getElementById ("wbdate").innerHTML = fdate

而且效果很好

【问题讨论】:

  • 您对date() 函数的调用是错误的。请参阅文档HERE
  • ^ 他说什么date("l", "F" "d", "Y");
  • 我认为你应该对调试php做一些研究,否则你会经常在这里。错误报告、die、var_dump,如果使用得当,所有可以指出错误的工具。

标签: javascript php html css include


【解决方案1】:

检查 PHP 文档中的 PHP 日期函数 http://php.net/manual/es/function.date.php

格式只能使用一个参数:

<?php echo date("l, F d, Y"); ?>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-06-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-15
    • 1970-01-01
    相关资源
    最近更新 更多