Tutorial Praktikal PHP: Bina Sistem Suka Lengkap untuk Berbilang Artikel

WBOY
Lepaskan: 2024-02-27 15:26:02
asal
638 orang telah melayarinya

Tutorial Praktikal PHP: Bina Sistem Suka Lengkap untuk Berbilang Artikel

Tutorial Praktikal PHP: Membina Sistem Suka Lengkap untuk Berbilang Artikel

Dalam pembangunan web, sistem suka adalah fungsi yang sangat biasa membolehkan pengguna menyatakan cinta dan sokongan mereka terhadap kandungan. Dalam tutorial ini, kami akan menggunakan PHP untuk membina sistem seperti yang lengkap untuk berbilang artikel, membolehkan pengguna menyukai operasi pada artikel yang berbeza.

Analisis Keperluan Sistem

Sebelum membina sistem yang serupa, mari kita analisa dahulu keperluan sistem:

  1. Pengguna boleh melihat berbilang artikel dan menyukai artikel.
  2. Setiap artikel boleh memaparkan bilangan suka, dan pengguna boleh menyemak suka artikel semasa.
  3. Pengguna hanya boleh menyukai artikel yang sama sekali, dan suka berulang perlu dicegah.

Reka bentuk pangkalan data

Pertama, kita perlu mereka bentuk jadual pangkalan data untuk menyimpan maklumat artikel dan seperti rekod. Berikut adalah dua jadual yang kami perlukan:

jadual artikel

CREATE TABLE articles(
    id INT PRIMARY KEY AUTO_INCREMENT,
    title VARCHAR(255) NOT NULL,
    content TEXT NOT NULL,
    likes INT DEFAULT 0
);
Salin selepas log masuk

suka jadual

CREATE TABLE likes(
    id INT PRIMARY KEY AUTO_INCREMENT,
    article_id INT,
    user_id INT
);
Salin selepas log masuk

Paparan halaman

Seterusnya, kami akan melaksanakan bahagian paparan halaman. Kami memerlukan halaman senarai artikel di mana pengguna boleh melihat semua artikel dan menyukai artikel tersebut.

index.php

<?php
// 连接数据库
$conn = new mysqli("localhost", "username", "password", "database");

// 查询所有文章
$query = "SELECT * FROM articles";
$result = $conn->query($query);

// 显示文章列表
while ($row = $result->fetch_assoc()) {
    echo "<h2>".$row['title']."</h2>";
    echo "<p>".$row['content']."</p>";
    echo "<p>Likes: ".$row['likes']."</p>";
    echo "<form method='post' action='like.php'>";
    echo "<input type='hidden' name='article_id' value='".$row['id']."'>";
    echo "<button type='submit'>Like</button>";
    echo "</form>";
}

$conn->close();
?>
Salin selepas log masuk

like.php

<?php
// 连接数据库
$conn = new mysqli("localhost", "username", "password", "database");

// 获取文章id
$article_id = $_POST['article_id'];

// 检查用户是否已经点赞过该文章(此处省略了用户验证部分)

// 更新文章点赞数
$query = "UPDATE articles SET likes = likes + 1 WHERE id = $article_id";
$conn->query($query);

// 记录点赞记录
$query = "INSERT INTO likes (article_id, user_id) VALUES ($article_id, $user_id)";
$conn->query($query);

$conn->close();
header('Location: index.php');
?>
Salin selepas log masuk

Ringkasan

Melalui langkah di atas, kami telah melaksanakan sistem seperti berbilang artikel yang mudah. Apabila pengguna mengklik butang suka pada halaman senarai artikel, sistem akan mengemas kini bilangan suka untuk artikel dan merekodkan maklumat suka untuk memastikan pengguna hanya boleh menyukai artikel yang sama sekali, sambil memastikan ketepatan dan konsistensi bilangan suka.

Sudah tentu, ini hanyalah contoh mudah, dan lebih banyak fungsi serta pengoptimuman mungkin diperlukan dalam aplikasi sebenar, seperti pengesahan pengguna, seperti fungsi pembatalan, dsb. Saya harap tutorial ini dapat membantu anda membina sistem seperti yang lebih berkuasa dan lengkap dalam projek sebenar.

Atas ialah kandungan terperinci Tutorial Praktikal PHP: Bina Sistem Suka Lengkap untuk Berbilang Artikel. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!