Cara menggunakan PHP untuk membangunkan fungsi soal jawab dalam talian yang mudah

PHPz
Lepaskan: 2023-09-21 14:34:01
asal
1288 orang telah melayarinya

Cara menggunakan PHP untuk membangunkan fungsi soal jawab dalam talian yang mudah

Cara menggunakan PHP untuk membangunkan fungsi Soal Jawab dalam talian yang mudah

Dalam era Internet hari ini, platform Soal Jawab telah menjadi cara penting untuk orang ramai mendapatkan maklumat dan menjawab soalan. Jika anda ingin membangunkan fungsi soal jawab dalam talian yang mudah, PHP ialah pilihan yang ideal. Dalam artikel ini, kami akan menerangkan cara menggunakan PHP untuk membangunkan ciri sedemikian dan menyediakan contoh kod khusus.

Langkah 1: Buat jadual pangkalan data

Pertama, kita perlu mencipta jadual pangkalan data untuk menyimpan soalan dan jawapan pengguna. Kita boleh menggunakan MySQL sebagai sistem pengurusan pangkalan data. Berikut ialah reka bentuk jadual pangkalan data yang mudah:

CREATE TABLE IF NOT EXISTS `questions` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `title` varchar(255) NOT NULL,
  `content` text NOT NULL,
  PRIMARY KEY (`id`)
);

CREATE TABLE IF NOT EXISTS `answers` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `question_id` int(11) NOT NULL,
  `content` text NOT NULL,
  PRIMARY KEY (`id`)
);
Salin selepas log masuk

Dua jadual dicipta di sini, satu untuk menyimpan soalan dan satu untuk menyimpan jawapan. Jadual soalan mengandungi tajuk dan kandungan soalan, dan jadual jawapan mengandungi kandungan jawapan dan id soalan yang sepadan.

Langkah 2: Tulis kod PHP

Seterusnya, kita perlu menulis kod PHP untuk mengendalikan soalan dan jawapan pengguna. Pertama, kita perlu membuat halaman untuk memaparkan senarai soalan dan menyediakan fungsi untuk menghantar soalan. Berikut ialah contoh kod PHP:

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

  // 处理提交的问题
  if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    $title = $_POST['title'];
    $content = $_POST['content'];
    
    // 插入问题到数据库表
    $query = "INSERT INTO questions (title, content) VALUES ('$title', '$content')";
    $conn->query($query);
  }

  // 获取问题列表
  $query = "SELECT * FROM questions";
  $result = $conn->query($query);
?>

<!DOCTYPE html>
<html>
  <head>
    <title>问答平台</title>
  </head>
  <body>
    <h1>问答平台</h1>

    <h2>提交问题</h2>
    <form method="POST" action="">
      <input type="text" name="title" placeholder="问题标题"><br>
      <textarea name="content" placeholder="问题内容"></textarea><br>
      <input type="submit" value="提交问题">
    </form>

    <h2>问题列表</h2>
    <ul>
      <?php while ($row = $result->fetch_assoc()) { ?>
        <li><?php echo $row['title']; ?></li>
      <?php } ?>
    </ul>
  </body>
</html>
Salin selepas log masuk

Kod ini mula-mula bersambung ke pangkalan data, kemudian menyerahkan soalan melalui borang, memasukkan soalan ke dalam jadual soalan. Seterusnya, ia menanyakan jadual soalan dan memaparkan senarai soalan pada halaman.

Langkah 3: Laksanakan butiran soalan dan fungsi jawapan

Akhir sekali, kita perlu membuat halaman untuk memaparkan butiran soalan dan jawapan, serta menyediakan fungsi menghantar jawapan. Berikut ialah contoh kod PHP:

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

  // 获取问题详情
  $qid = $_GET['qid'];
  $query = "SELECT * FROM questions WHERE id = $qid";
  $result = $conn->query($query);
  $question = $result->fetch_assoc();

  // 处理提交的回答
  if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    $content = $_POST['content'];

    // 插入回答到数据库表
    $query = "INSERT INTO answers (question_id, content) VALUES ($qid, '$content')";
    $conn->query($query);
  }

  // 获取回答列表
  $query = "SELECT * FROM answers WHERE question_id = $qid";
  $result = $conn->query($query);
?>

<!DOCTYPE html>
<html>
  <head>
    <title><?php echo $question['title']; ?></title>
  </head>
  <body>
    <h1><?php echo $question['title']; ?></h1>
    <p><?php echo $question['content']; ?></p>

    <h2>提交回答</h2>
    <form method="POST" action="">
      <textarea name="content" placeholder="回答内容"></textarea><br>
      <input type="submit" value="提交回答">
    </form>

    <h2>回答列表</h2>
    <?php while ($row = $result->fetch_assoc()) { ?>
      <p><?php echo $row['content']; ?></p>
    <?php } ?>
  </body>
</html>
Salin selepas log masuk

Kod ini mula-mula bersambung ke pangkalan data, kemudian mendapat id soalan dengan mendapatkan parameter GET, dan menanyakan jadual soalan mengikut id untuk mendapatkan butiran soalan. Seterusnya, ia menanyakan jadual jawapan dan memaparkan senarai jawapan pada halaman. Akhir sekali, ia menyediakan borang untuk menyerahkan jawapan dan memasukkan jawapan ke dalam jadual jawapan.

Kesimpulan

Melalui langkah di atas, kami berjaya menggunakan PHP untuk membangunkan fungsi soal jawab dalam talian yang mudah. Pada masa yang sama, kami juga menyediakan contoh kod khusus untuk membantu anda memahami dan menggunakan dengan lebih baik. Semoga artikel ini bermanfaat kepada anda.

Atas ialah kandungan terperinci Cara menggunakan PHP untuk membangunkan fungsi soal jawab dalam talian yang mudah. 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