【问题标题】:Post Archive is not showing year and month帖子存档未显示年份和月份
【发布时间】:2015-01-05 14:13:30
【问题描述】:

我是php和mysql的新手。我正在尝试将我的数据库中的帖子显示为月份和年份,并计算一个月内的总帖子。我的代码在这里...

<?php 
    $sql="SELECT YEAR(FROM_UNIXTIME(post_date)) AS EAR,MONTHNAME(FROM_UNIXTIME(post_date)) AS MONTH, COUNT(*) AS TOTAL from post GROUP BY YEAR, MONTH";
    $result=mysql_query($sql,$bd) or die("Error:".mysql_error());
    while($row=mysql_fetch_array($result)){
        ?>
        <dl>
         <dt><?php echo $row['YEAR']; ?></dt>
         <dd><a href="posts.php?month=<?php echo $row['MONTH']; ?>"><?php echo "&nbsp;&nbsp;&nbsp;&nbsp;".$row['MONTH']."(".$row['TOTAL'].")" ?></a></dd>
        </dl> 
<?php } ?>

但是我没有得到正确的结果,我只能看到像 (7) 这样的帖子总数。 谁能帮帮我?

【问题讨论】:

  • 将代码中的 $row['YEAR'] 替换为 $row['EAR'] 并对所有函数使用 mysqli_ 前缀,因为所有带有 mysql_ 前缀的函数都已弃用。
  • 我已经使用了所有带有 mysqli_ 前缀的函数,当我使用 $row['EAR'] 时,我收到了这条消息“注意:未定义的索引:C:\xampp\htdocs\webdreamboy.com\ 中的 EAR第 84 行包含\sidebarright.php"

标签: php mysql


【解决方案1】:

您的查询中有错字,EAR 而不是 YEAR。错误只是告诉你这一点。

<?php 
    $sql="SELECT YEAR(FROM_UNIXTIME(post_date)) AS YEAR,MONTHNAME(FROM_UNIXTIME(post_date)) AS MONTH, COUNT(*) AS TOTAL from post GROUP BY YEAR, MONTH";
    $result=mysql_query($sql,$bd) or die("Error:".mysql_error());
    while($row=mysql_fetch_array($result)){
        ?>
        <dl>
         <dt><?php echo $row['YEAR']; ?></dt>
         <dd><a href="posts.php?month=<?php echo $row['MONTH']; ?>"><?php echo "&nbsp;&nbsp;&nbsp;&nbsp;".$row['MONTH']."(".$row['TOTAL'].")" ?></a></dd>
        </dl> 
<?php } ?>

查看部分:

YEAR(FROM_UNIXTIME(post_date)) AS YEAR

同样来自您的网站,href 似乎不正确。试试这个:

<a href="<?php echo 'posts.php?month='.$row['MONTH']; ?>">

【讨论】:

  • 对不起!关于那个,我修复了这个问题,并为所有查询使用了 mysqli_ 前缀,但仍然没有得到正确的答案......你能看看这个网站webdreamboy.com 在右下角有一个名为存档的部分,我正在尝试显示年份和月份,计算所有帖子对应的月份.......我真的需要尽快帮助!!!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-08-17
  • 1970-01-01
  • 1970-01-01
  • 2021-06-09
  • 1970-01-01
  • 2018-06-28
  • 2011-06-11
相关资源
最近更新 更多