0

我正在尝试从已点击的特定月份中提取帖子,在不同的页面上......所以让它更清楚一点。

我有一个页面,每个月都会显示一篇帖子,然后我有第二个页面,该页面链接到该页面。第二页用于显示上一页中选择的月份的帖子。

下面是显示月份的代码和我创建的供用户点击的链接

$months = mysql_query("SELECT DISTINCT(MONTHNAME(date)) as post_month
                       FROM article
                       LIMIT 12");


while($row = mysql_fetch_array($months)){
    echo "<a href=\"montharticles.php?id=" . $row['0'] . "\">" . $row['0'] . "</a><br/>";
}

下面是第二页的代码

$article = mysql_query("SELECT article_id, content, DATE_FORMAT(date, '%d %b %y') 
                       FROM article
                       WHERE article_id = $_GET[id]");


while($row = mysql_fetch_array($article)){
    echo $row . "</br>";
}

我的问题是,当打开第二页时,我收到一条错误消息。

我已删除 $_GET[id] 并将其替换为数字,这样做只会显示“数组”我也尝试过 $_GET[month] 但没有运气

我意识到语句的 $_GET[] 部分存在问题,如果单击一个月,我需要将地址栏中的内容设置为 $_GET 命令中的内容,但我不知道该怎么做它。

4

2 回答 2

0

你得到“数组”的原因是因为$row是一个数组。正如 Ami 所说,您需要访问数组中的一个值。

在您的 ref 访问的第一页上montharticles.php?id=ID,您必须确保通过查看地址栏来填充 id 属性,然后在第二页上尝试在echo $_GET['id'];某处回显()。

于 2012-04-29T17:15:35.923 回答
0

在您的代码$row中是一个包含整行结果集的数组。

要访问行中的特定列,您需要执行以下操作:

echo $row['article_id'];

您可能希望为日期列使用别名,如下所示:

SELECT article_id, content, DATE_FORMAT(date, '%d %b %y') AS date_column

所以你可以这样做:

echo $row['date_column'];

而不是这个:

echo $row["DATE_FORMAT(date, '%d %b %y')"];
于 2012-04-29T17:10:31.277 回答