Похоже, вы заранее знаете идентификаторы, которые должны быть отклонены.Затем сделайте это в первом запросе -
$recent = mysql_query("SELECT * FROM forum_posts where forum_id NOT IN (24, 25, 35) ORDER BY post_time DESC LIMIT 5");
По-прежнему извлекает 5 результатов, исключая нежелательные
И ниже приводится консолидированный запрос, который выполняет ту же задачу, что и ваши 3 запроса
$recent = mysql_query("SELECT fposts.username FROM forum_posts as fposts INNER JOIN forum_topics AS ftopics ON (ftopics.topic_id = fposts.topic_id)
INNER JOIN forum_users AS fusers ON (fusers.user_id = forum_posts.poster_id)
WHERE fposts.forum_id NOT IN (24, 25, 35) ORDER BY fposts.post_time DESC LIMIT 5");
while ($recent_row = mysql_fetch_assoc($recent))
{
echo "$username posted in \"". "$recent_row['username']\"";
}