How to develop a simple news release system using PHP

WBOY
Release: 2023-09-21 12:36:02
Original
1483 people have browsed it

How to develop a simple news release system using PHP

How to use PHP to develop a simple news release system

With the development of the Internet, the news release system has become one of the important information dissemination methods in various industries and fields. . By developing a simple news release system yourself, you can meet your own needs and improve your programming capabilities. This article will introduce how to use PHP to develop a simple news release system, including database design, page development and backend management.

1. Database design

Before developing a news release system, you first need to design a database structure to store news-related information. The following is a simple news table design example:

CREATE TABLE news (
  id INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
  title VARCHAR(255) NOT NULL,
  content TEXT NOT NULL,
  author VARCHAR(50) NOT NULL,
  publish_time DATETIME NOT NULL
);
Copy after login

This news table contains five fields: id, title, content, author and publish_time. id is the primary key field, title stores the news title, content stores the news content, author stores the news author, and publish_time stores the news release time.

2. Page development

  1. News list page

The news list page is used to display all published news for users to browse and read. The following is a simple example of a news list page:

<?php
// 连接数据库
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "news_database";

$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
    die("数据库连接失败:" . $conn->connect_error);
}

// 查询新闻列表
$sql = "SELECT * FROM news ORDER BY publish_time DESC";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    // 输出数据
    while($row = $result->fetch_assoc()) {
        echo "<h3>".$row["title"]."</h3>";
        echo "<p>".$row["content"]."</p>";
        echo "<p><strong>作者:</strong>".$row["author"]."</p>";
        echo "<p><strong>发布时间:</strong>".$row["publish_time"]."</p>";
        echo "<hr>";
    }
} else {
    echo "暂无新闻";
}

$conn->close();
?>
Copy after login

This page connects to the database and uses the SELECT statement to obtain the published news list from the news table, and then outputs it to the page.

  1. News details page

The news details page is used to display the detailed content of a single news article. The following is a simple example of a news details page:

<?php
// 连接数据库
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "news_database";

$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
    die("数据库连接失败:" . $conn->connect_error);
}

// 获取新闻ID
$id = $_GET["id"];

// 查询新闻详情
$sql = "SELECT * FROM news WHERE id = ".$id;
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    // 输出数据
    $row = $result->fetch_assoc();
    echo "<h3>".$row["title"]."</h3>";
    echo "<p>".$row["content"]."</p>";
    echo "<p><strong>作者:</strong>".$row["author"]."</p>";
    echo "<p><strong>发布时间:</strong>".$row["publish_time"]."</p>";
} else {
    echo "找不到该新闻";
}

$conn->close();
?>
Copy after login

This page connects to the database and uses the SELECT statement to obtain the corresponding news details from the news table based on the news ID, and then outputs them to the page.

3. Backend Management

The backend management part is used to manage news publishing, editing, deletion and other operations. The following is an example of a simple backend management page:

<?php
// 连接数据库
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "news_database";

$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
    die("数据库连接失败:" . $conn->connect_error);
}

// 添加新闻
if ($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST["submit"])) {
    $title = $_POST["title"];
    $content = $_POST["content"];
    $author = $_POST["author"];
    $publish_time = date("Y-m-d H:i:s");

    $sql = "INSERT INTO news (title, content, author, publish_time) VALUES ('$title', '$content', '$author', '$publish_time')";
    
    if ($conn->query($sql) === TRUE) {
        echo "新闻发布成功";
    } else {
        echo "新闻发布失败:" . $conn->error;
    }
}

$conn->close();
?>

<form method="POST" action="">
    <label for="title">新闻标题:</label><br>
    <input type="text" id="title" name="title" required><br><br>
    
    <label for="content">新闻内容:</label><br>
    <textarea id="content" name="content" required></textarea><br><br>
    
    <label for="author">作者:</label><br>
    <input type="text" id="author" name="author" required><br><br>
    
    <input type="submit" name="submit" value="发布新闻">
</form>
Copy after login

This page contains a form for entering the title, content and author of the news. When the user submits the form, the data will be inserted into the news table of the database and the corresponding prompt information will be displayed.

The above is the development process of a simple news release system. By learning and practicing this example, you can further expand and optimize this system to make it more complete and flexible. I hope this article can help you get started with PHP development and provide some guidance and inspiration for your study and work.

The above is the detailed content of How to develop a simple news release system using PHP. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!