当前位置:首页 > PHP

php实现文章审核

2026-02-16 12:37:29PHP

PHP实现文章审核的方法

实现文章审核功能通常需要结合数据库操作、文本过滤和权限管理。以下是几种常见的实现方式:

数据库设计

在数据库中创建文章表时,添加审核状态字段:

CREATE TABLE articles (
    id INT AUTO_INCREMENT PRIMARY KEY,
    title VARCHAR(255),
    content TEXT,
    status ENUM('pending', 'approved', 'rejected') DEFAULT 'pending',
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
);

提交文章时设置状态

用户提交文章时,默认设置为待审核状态:

$stmt = $pdo->prepare("INSERT INTO articles (title, content, status) VALUES (?, ?, 'pending')");
$stmt->execute([$title, $content]);

审核后台实现

创建管理员审核界面,列出待审核文章:

$pendingArticles = $pdo->query("SELECT * FROM articles WHERE status = 'pending'")->fetchAll();

审核操作处理

处理通过或拒绝操作:

if (isset($_POST['approve'])) {
    $stmt = $pdo->prepare("UPDATE articles SET status = 'approved' WHERE id = ?");
    $stmt->execute([$_POST['article_id']]);
}

if (isset($_POST['reject'])) {
    $stmt = $pdo->prepare("UPDATE articles SET status = 'rejected' WHERE id = ?");
    $stmt->execute([$_POST['article_id']]);
}

前端展示控制

根据审核状态显示不同内容:

$article = $pdo->query("SELECT * FROM articles WHERE id = $id")->fetch();
if ($article['status'] != 'approved' && !$isAdmin) {
    die('文章正在审核中');
}

敏感词过滤

在提交时进行敏感词检测:

$forbiddenWords = ['敏感词1', '敏感词2'];
foreach ($forbiddenWords as $word) {
    if (strpos($content, $word) !== false) {
        die('内容包含敏感词');
    }
}

自动审核规则

可以设置一些自动通过规则:

if (strlen($content) > 100 && !containsLinks($content)) {
    $status = 'approved';
} else {
    $status = 'pending';
}

审核日志记录

记录审核操作:

$pdo->prepare("INSERT INTO audit_logs (user_id, article_id, action, created_at) VALUES (?, ?, ?, NOW())")
    ->execute([$_SESSION['user_id'], $articleId, $action]);

这些方法可以单独使用或组合使用,根据实际需求调整审核流程的严格程度。

php实现文章审核

标签: 文章php
分享给朋友:

相关文章

php 登录实现

php 登录实现

PHP 登录实现 PHP 登录功能通常包括用户认证、会话管理和安全性措施。以下是实现 PHP 登录功能的关键步骤。 数据库准备 创建一个用户表存储用户信息,通常包括用户名、密码(加密存储)和其他必…

php 实现接口

php 实现接口

PHP 实现接口的方法 在 PHP 中,接口(Interface)用于定义一组方法的规范,而不包含具体的实现。类可以实现(implement)接口,并必须实现接口中定义的所有方法。 定义接口 接口…

php 实现文件下载

php 实现文件下载

实现文件下载的基本方法 使用 PHP 实现文件下载的核心是通过设置 HTTP 头部信息,强制浏览器将文件作为附件下载而非直接显示。以下是一个基础实现示例: $file_path = '/path/…

php实现静态

php实现静态

静态化实现方法 PHP实现静态化主要通过生成HTML文件或缓存机制来减少服务器动态解析的开销。以下是几种常见方法: 生成静态HTML文件 通过file_put_contents()将动态内容保存为H…

php怎么实现登录功能

php怎么实现登录功能

数据库准备 创建用户表存储登录信息,通常包括用户名、密码(需加密)等字段。示例SQL: CREATE TABLE users ( id INT AUTO_INCREMENT PRIMARY…

php 实现秒杀

php 实现秒杀

PHP 实现秒杀的关键技术 秒杀系统需要解决高并发、超卖、性能瓶颈等问题。以下是实现秒杀的核心方案: 使用 Redis 预减库存 将商品库存提前加载到 Redis 中,通过原子操作保证库存准确性:…