Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Cara menggunakan PHP untuk melaksanakan fungsi pemesejan dalam tapak sistem CMS

Cara menggunakan PHP untuk melaksanakan fungsi pemesejan dalam tapak sistem CMS

王林
王林asal
2023-08-04 19:41:03861semak imbas

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

Seterusnya, kita perlu mencipta halaman 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>";

Dalam kod di atas, kami memperoleh ID mesej dalam tapak yang dihantar dalam parameter URL, dan menanyakan pangkalan data berdasarkan ID untuk mendapatkan kandungan khusus mesej dalam tapak dan memaparkannya pada halaman.

Pada ketika ini, kami telah menyelesaikan pelaksanaan fungsi pemesejan di tapak sistem CMS mudah. Pengguna boleh melihat mesej dalam tapak yang mereka terima pada halaman senarai mesej dalam tapak, dan klik pada pautan untuk memasuki halaman butiran mesej dalam tapak untuk melihat kandungan mesej dalam tapak tertentu.

Sudah tentu, ini hanyalah contoh mudah, dan lebih banyak fungsi dan keselamatan perlu dipertimbangkan dalam pembangunan sebenar. Sebagai contoh, fungsi penghantaran mel boleh ditambah supaya pengguna boleh menghantar mesej intra-tapak kepada pengguna lain kandungan mesej intra-tapak juga boleh ditapis dan disahkan untuk mengelakkan suntikan kod berniat jahat.

Saya harap artikel ini akan membantu dalam menggunakan PHP untuk melaksanakan fungsi pemesejan di tapak sistem CMS, dan boleh memberikan beberapa idea dan inspirasi kepada pembaca. 🎜

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!

Kenyataan:
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