显示最近3条新闻消息

时间:2015-05-25 20:03:32

标签: php mysql

我想在PHP页面上显示最后3条新闻消息。为此,我使用以下代码:

function news($number) {
    $number = (int)$number
    $query = mysql_query("SELECT `id`, `title`, `author`, `message`, `date` 
                          FROM `news` 
                          WHERE `hidden` = 0 
                          ORDER BY `date` 
                          DESC LIMIT $number");
    while ($row = mysql_fetch_array($query)) 
    {
        return '<p class="p_sub">' . $row['title'] . '~' . $row['author'] .
           '</p><p>' . $row['message'] . '</p>';
        var_dump($row);
    }
}

echo news(3);

但是,这只显示一条消息,而不是三条消息。有谁能搞清楚为什么?

1 个答案:

答案 0 :(得分:4)

使用return将退出while循环。您可以做的是连接包含HTML的字符串,如此

$html = '';
while ($row = mysql_fetch_array($query)) {
    $html .= '<p class="p_sub">' . $row['title'] . '~' . $row['author'] . '</p><p>' . $row['message'] . '</p>';                
}
return $html;