当前位置:首页 > PHP

php实现站内公告

2026-01-29 01:49:27PHP

实现站内公告的PHP方法

数据库设计 创建公告表announcements,包含字段:id(主键)、title(标题)、content(内容)、created_at(发布时间)、is_active(是否激活)。

CREATE TABLE announcements (
    id INT AUTO_INCREMENT PRIMARY KEY,
    title VARCHAR(255) NOT NULL,
    content TEXT NOT NULL,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    is_active BOOLEAN DEFAULT 1
);

后台管理功能 创建公告发布页面admin_post_announcement.php,包含表单提交处理逻辑。表单字段包括标题、内容、激活状态。

// 处理表单提交
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    $title = $_POST['title'];
    $content = $_POST['content'];
    $is_active = isset($_POST['is_active']) ? 1 : 0;

    $stmt = $pdo->prepare("INSERT INTO announcements (title, content, is_active) VALUES (?, ?, ?)");
    $stmt->execute([$title, $content, $is_active]);
}

前端展示功能 在网站公共头部或侧边栏文件header.php中查询并显示最新公告。

// 查询激活的公告
$stmt = $pdo->query("SELECT * FROM announcements WHERE is_active = 1 ORDER BY created_at DESC LIMIT 5");
$announcements = $stmt->fetchAll(PDO::FETCH_ASSOC);

// 展示公告
foreach ($announcements as $announcement) {
    echo '<div class="announcement">';
    echo '<h4>' . htmlspecialchars($announcement['title']) . '</h4>';
    echo '<p>' . nl2br(htmlspecialchars($announcement['content'])) . '</p>';
    echo '<small>' . $announcement['created_at'] . '</small>';
    echo '</div>';
}

样式优化 为公告添加CSS样式,增强可读性。

.announcement {
    border: 1px solid #ddd;
    padding: 15px;
    margin-bottom: 10px;
    border-radius: 5px;
    background-color: #f9f9f9;
}
.announcement h4 {
    margin-top: 0;
    color: #333;
}

高级功能扩展 添加公告分类功能,扩展表结构增加category字段。实现公告分页显示,修改查询语句加入LIMITOFFSET参数。增加公告点击统计功能,添加views字段并在每次展示时更新。

// 更新浏览量
$stmt = $pdo->prepare("UPDATE announcements SET views = views + 1 WHERE id = ?");
$stmt->execute([$announcement['id']]);

安全注意事项 所有用户输入必须使用预处理语句防止SQL注入。输出内容时使用htmlspecialchars()防止XSS攻击。对后台管理页面添加权限验证,确保只有管理员可以发布公告。

php实现站内公告

标签: 站内公告
分享给朋友:

相关文章

vue实现公告查看

vue实现公告查看

Vue实现公告查看功能 在Vue中实现公告查看功能,可以通过组件化方式构建公告列表和详情页。以下是具体实现方法: 数据准备 公告数据通常存储在数组中,每个公告对象包含标题、内容、发布时间等字段:…

vue实现公告文字排版

vue实现公告文字排版

Vue 实现公告文字排版的方法 使用 CSS 控制文字样式 通过 CSS 可以轻松控制公告文字的字体、颜色、大小和对齐方式。在 Vue 的 <style> 部分或外部 CSS 文件中定义样…

php站内信实现

php站内信实现

PHP 站内信功能实现 站内信功能通常包括发送、接收、查看和删除消息等基本操作。以下是实现站内信功能的详细方法: 数据库设计 创建两个表:users(用户表)和messages(站内信表)。…

php实现站内私信功能

php实现站内私信功能

实现站内私信功能 站内私信功能需要数据库设计、用户交互逻辑和消息管理。以下是实现的关键步骤: 数据库设计 创建两个表:users(用户表)和messages(私信表)。messages表结构如下:…