Bagaimana untuk mereka bentuk struktur jadual MySQL yang fleksibel untuk melaksanakan fungsi tinjauan soal selidik?
1. Pengenalan
Tinjauan soal selidik digunakan secara meluas dalam pengumpulan data dan penyelidikan dalam masyarakat moden Untuk menyesuaikan secara fleksibel dengan keperluan tinjauan soal selidik yang berbeza, kami perlu mereka bentuk struktur jadual MySQL yang munasabah. Artikel ini akan memperkenalkan cara mereka bentuk struktur jadual MySQL yang fleksibel untuk melaksanakan fungsi soal selidik, dan menyediakan contoh kod khusus.
2. Analisis Keperluan
Medan: id (kunci utama), survey_id (id soal selidik, kunci asing), kandungan (kandungan soalan), jenis (jenis soalan, seperti pilihan tunggal, aneka pilihan, dll.)
INTENDA TIMESTAMP
survey_id INT NOT NULL,
kandungan TEKS BUKAN NULL,
taip TINYINT NOT NULL, -- 1 bermaksud pilihan tunggal, 2 bermaksud pilihan berganda
KUNCI ASING (id_tinjauan) RUJUKAN tinjauan(id)
--BUAT pilihan JADUAL
id INT PRIMARY KUNCI AUTO_INNCREMENT,
kandungan TEKS BUKAN NULL,
FOREIGN KUNCI (soalan_id) RUJUKAN soalan(id)
);
-- Cipta jadual Jawapan INTISARI
Jawapan UTAMA
JAWAPAN UTAMA
CREATE AUTO_INCREMENT,
question_id INT NOT NULL,
option_id INT NOT NULL,
user_id INT NOT NULL,
dibuat_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
EId FORFERENS KUNCI (id_soalan) RUJUKAN soalan(id),
KUNCI ASING (option_id) RUJUKAN pilihan(id)
);
Untuk pelaksanaan khusus tinjauan soal selidik, kami boleh menggunakan PHP atau Bahasa pengaturcaraan lain untuk mengendalikan paparan halaman dan pemprosesan data. Berikut ialah kod contoh mudah:
Buat halaman tinjauan dan serahkan jawapan pengguna melalui borang.
// 获取用户提交的答案 $surveyId = $_POST['survey_id']; $answers = $_POST; // 获取所有POST参数 foreach ($answers as $questionId => $optionIds) { if (strpos($questionId, 'question_') !== false) { $questionId = str_replace('question_', '', $questionId); // 保存答案到数据库 foreach ($optionIds as $optionId) { // 将答案插入到answers表中的代码 } } }
Dengan mereka bentuk struktur jadual MySQL secara rasional, kami boleh melaksanakan fungsi tinjauan soal selidik secara fleksibel dan memudahkan statistik dan analisis seterusnya. Semasa proses pelaksanaan khusus, perhatian perlu diberikan kepada korelasi dan pemprosesan logik jadual data untuk memastikan integriti dan ketepatan data.
Atas ialah kandungan terperinci Bagaimana untuk mereka bentuk struktur jadual MySQL yang fleksibel untuk melaksanakan fungsi tinjauan soal selidik?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!