Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Cara menggunakan PHP untuk membangunkan fungsi soal selidik dalam talian yang mudah

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

王林
王林asal
2023-09-20 13:40:521079semak imbas

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

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

Dalam masyarakat moden, soal selidik adalah kaedah pengumpulan data sama ada adalah penyelidikan akademik, penyelidikan pasaran atau maklum balas pengguna, soal selidik tidak dapat dipisahkan. Dengan popularisasi Internet, semakin banyak soal selidik telah mula beralih kepada borang dalam talian, yang bukan sahaja menjimatkan kos kertas soal selidik, tetapi juga memudahkan untuk mengira dan menganalisis data. Artikel ini akan memperkenalkan cara menggunakan PHP untuk membangunkan fungsi soal selidik dalam talian yang mudah dan menyediakan contoh kod khusus.

1. Reka bentuk pangkalan data

Pertama, kita perlu mereka bentuk pangkalan data untuk menyimpan soalan dan jawapan soal selidik. Jadual pangkalan data boleh dibahagikan kepada dua: jadual soalan (soalan) dan jadual jawapan (jawapan).

Reka bentuk medan jadual soalan adalah seperti berikut:

id - pengecam unik soalan
soalan - kandungan soalan
created_at - masa penciptaan soalan# 🎜🎜#

Reka bentuk medan jadual jawapan adalah seperti berikut:

id - pengecam unik jawapan

question_id - the id jadual soalan yang berkaitan
jawapan - kandungan jawapan# 🎜🎜#created_at - Masa penciptaan jawapan

2. Buat halaman soal selidik

Dalam PHP , kita boleh menggunakan HTML dan CSS untuk mencipta reka letak dan gaya halaman soal selidik. Berikut ialah contoh mudah:

<!DOCTYPE html>
<html>
<head>
  <title>在线调查问卷</title>
  <link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>

  <h1>在线调查问卷</h1>

  <form action="submit.php" method="post">
    <p>问题一:</p>
    <input type="text" name="question1">

    <p>问题二:</p>
    <input type="text" name="question2">

    <p>问题三:</p>
    <input type="text" name="question3">

    <p><input type="submit" value="提交"></p>
  </form>

</body>
</html>

3 Memproses penyerahan soal selidik

Dalam halaman soal selidik di atas, kami menyediakan borang dan menyatakan tindakan butang hantar sebagai hantar. .php. Seterusnya, kita perlu mencipta fail submit.php untuk mengendalikan penyerahan soal selidik.

<?php
// 连接数据库
$db = new PDO('mysql:host=localhost;dbname=mydatabase', 'username', 'password');

// 获取问卷数据并插入到数据库
$question1 = $_POST['question1'];
$question2 = $_POST['question2'];
$question3 = $_POST['question3'];

// 插入问题数据
$stmt1 = $db->prepare('INSERT INTO questions (question) VALUES (?)');
$stmt1->execute([$question1]);

$stmt2 = $db->prepare('INSERT INTO questions (question) VALUES (?)');
$stmt2->execute([$question2]);

$stmt3 = $db->prepare('INSERT INTO questions (question) VALUES (?)');
$stmt3->execute([$question3]);

// 获取最新插入问题的id
$questionId1 = $db->lastInsertId();
$questionId2 = $db->lastInsertId();
$questionId3 = $db->lastInsertId();

// 处理答案数据
$answer1 = $_POST['answer1'];
$answer2 = $_POST['answer2'];
$answer3 = $_POST['answer3'];

// 插入答案数据
$stmt4 = $db->prepare('INSERT INTO answers (question_id, answer) VALUES (?, ?)');
$stmt4->execute([$questionId1, $answer1]);

$stmt5 = $db->prepare('INSERT INTO answers (question_id, answer) VALUES (?, ?)');
$stmt5->execute([$questionId2, $answer2]);

$stmt6 = $db->prepare('INSERT INTO answers (question_id, answer) VALUES (?, ?)');
$stmt6->execute([$questionId3, $answer3]);

// 提交成功提示
echo "问卷提交成功!";
?>

4. Paparkan keputusan soal selidik

Kita boleh menggunakan PHP untuk menanyakan pangkalan data dan memaparkan hasil soal selidik dalam bentuk histogram. Berikut ialah kod contoh mudah:

<?php
// 连接数据库
$db = new PDO('mysql:host=localhost;dbname=mydatabase', 'username', 'password');

// 查询问题数据
$stmt = $db->query('SELECT * FROM questions');

// 打印问卷问题
foreach ($stmt as $row) {
  echo "<p>问题:".$row['question']."</p>";

  // 查询答案数据
  $stmt2 = $db->prepare('SELECT * FROM answers WHERE question_id = ?');
  $stmt2->execute([$row['id']]);

  // 打印答案数量
  $count = 0;
  foreach ($stmt2 as $row2) {
    $count++;
  }

  echo "<p>答案数量:".$count."</p>";
}
?>

Ringkasan

Melalui langkah di atas, kami telah melaksanakan fungsi soal selidik dalam talian yang mudah. Apabila pengguna menghantar soal selidik, data akan disimpan dalam pangkalan data Kami juga boleh menanyakan pangkalan data melalui PHP dan memaparkan hasil soal selidik. Sudah tentu, ini hanyalah contoh mudah Dalam aplikasi sebenar, fungsi boleh dikembangkan dan dioptimumkan mengikut keperluan. Saya harap artikel ini akan membantu pemula yang menggunakan PHP untuk membangunkan fungsi soal selidik dalam talian.

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