Cara menggunakan PHP untuk melaksanakan fungsi pemesejan di tapak sistem CMS
Dengan populariti Internet, pelbagai laman web juga telah berkembang maju untuk menyediakan komunikasi antara pengguna dengan lebih baik, fungsi pemesejan di tapak telah menjadi a mesti ada untuk banyak sistem CMS Salah satu fungsi. Artikel ini akan memperkenalkan cara menggunakan PHP untuk melaksanakan fungsi pemesejan dalam tapak sistem CMS mudah dan memberikan contoh kod yang sepadan.
Pertama sekali, kita perlu mencipta pangkalan data untuk menyimpan data yang berkaitan dengan mesej dalam tapak. Katakan kita sudah mempunyai pangkalan data bernama "cms", yang mengandungi jadual pengguna bernama "pengguna". Kami perlu menambah dua medan pada jadual pengguna untuk menyimpan maklumat yang berkaitan dengan mesej dalaman Satu ialah sender_id, yang mewakili ID pengirim dan satu lagi ialah receiver_id, yang mewakili ID penerima.
Berikut ialah pernyataan SQL untuk mencipta senarai mesej di tapak:
CREATE TABLE IF NOT EXISTS messages ( id INT(11) AUTO_INCREMENT PRIMARY KEY, sender_id INT(11), receiver_id INT(11), subject VARCHAR(255), body TEXT, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, FOREIGN KEY (sender_id) REFERENCES users (id), FOREIGN KEY (receiver_id) REFERENCES users (id) );
Seterusnya, kita perlu menambah halaman pada sistem CMS untuk memaparkan senarai mesej di tapak pengguna. Pada halaman ini, pengguna boleh melihat mesej tapak yang mereka terima dan memilih untuk melihat mesej tertentu.
Pertama, kita perlu menanyakan pangkalan data untuk mendapatkan senarai mesej tapak yang diterima oleh pengguna. Berikut ialah fungsi mudah yang digunakan untuk mendapatkan senarai mesej dalam tapak:
function getInboxMessages($userId) { $query = "SELECT * FROM messages WHERE receiver_id = '$userId' ORDER BY created_at DESC"; $result = mysqli_query($conn, $query); $messages = mysqli_fetch_all($result, MYSQLI_ASSOC); return $messages; }
Kemudian, ia menggelung senarai mesej dalam tapak pada halaman, memaparkan tajuk dan maklumat penghantar setiap mesej dalam tapak, dan menyediakan pautan untuk pengguna mengklik untuk melihat mesej tapak tertentu.
$inboxMessages = getInboxMessages($userId); foreach($inboxMessages as $message) { $senderId = $message['sender_id']; $subject = $message['subject']; // 查询发件人的信息 $query = "SELECT * FROM users WHERE id = '$senderId'"; $result = mysqli_query($conn, $query); $sender = mysqli_fetch_assoc($result); echo "<div>"; echo "<p>发件人:" . $sender['username'] . "</p>"; echo "<p>标题:" . $subject . "</p>"; echo "<a href='view_message.php?id=" . $message['id'] . "'>查看</a>"; echo "</div>"; }
Dalam kod di atas, kami memperoleh maklumat pengirim dengan menanyakan jadual pengguna dan memaparkan maklumat yang berkaitan pada halaman. Pada masa yang sama, kami menyediakan halaman view_message.php
untuk melihat pautan untuk memaparkan kandungan mesej di tapak tertentu. view_message.php
页面,用于展示具体的站内信内容。
接下来,我们需要创建view_message.php
view_message.php
untuk memaparkan kandungan mesej dalam tapak. $messageId = $_GET['id']; // 查询站内信的具体内容 $query = "SELECT * FROM messages WHERE id = '$messageId'"; $result = mysqli_query($conn, $query); $message = mysqli_fetch_assoc($result); echo "<p>发件人:" . $message['sender_id'] . "</p>"; echo "<p>标题:" . $message['subject'] . "</p>"; echo "<p>内容:" . $message['body'] . "</p>"; echo "<p>时间:" . $message['created_at'] . "</p>";
Atas ialah kandungan terperinci Cara menggunakan PHP untuk melaksanakan fungsi pemesejan dalam tapak sistem CMS. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!