Cara menggunakan PHP untuk membangunkan fungsi soal selidik dalam talian
Dengan perkembangan Internet, orang ramai perlu menggunakan soal selidik dalam penyelidikan pasaran, tinjauan kepuasan pengguna, penyelidikan akademik dan bidang lain. Tinjauan soal selidik dalam talian telah menjadi salah satu kaedah yang paling popular dan mudah pada masa ini. Artikel ini akan mengambil bahasa pembangunan PHP sebagai contoh untuk memperkenalkan cara menggunakan PHP untuk membangunkan fungsi soal selidik dalam talian yang mudah, dan melampirkan contoh kod.
<?php // 连接数据库 $conn = new mysqli('localhost', 'username', 'password', 'questionnaires'); if ($conn->connect_error) { die("连接数据库失败:" . $conn->connect_error); } // 查询问卷 $sql = "SELECT * FROM surveys"; $result = $conn->query($sql); // 显示问卷 if ($result->num_rows > 0) { while ($row = $result->fetch_assoc()) { echo "<h1>{$row['title']}</h1>"; echo "<p>{$row['description']}</p>"; // 查询问题 $questionSql = "SELECT * FROM questions WHERE survey_id = {$row['id']}"; $questionResult = $conn->query($questionSql); // 显示问题 if ($questionResult->num_rows > 0) { while ($questionRow = $questionResult->fetch_assoc()) { echo "<p>{$questionRow['content']}</p>"; // 根据问题类型显示不同的输入框 if ($questionRow['type'] == 'text') { echo "<input type='text' name='answer{$questionRow['id']}'><br>"; } elseif ($questionRow['type'] == 'checkbox') { echo "<input type='checkbox' name='answer{$questionRow['id']}[]' value='Option 1'>选项1<br>"; echo "<input type='checkbox' name='answer{$questionRow['id']}[]' value='Option 2'>选项2<br>"; echo "<input type='checkbox' name='answer{$questionRow['id']}[]' value='Option 3'>选项3<br>"; } elseif ($questionRow['type'] == 'radio') { echo "<input type='radio' name='answer{$questionRow['id']}' value='Option 1'>选项1<br>"; echo "<input type='radio' name='answer{$questionRow['id']}' value='Option 2'>选项2<br>"; echo "<input type='radio' name='answer{$questionRow['id']}' value='Option 3'>选项3<br>"; } } } // 显示提交按钮 echo "<input type='submit' value='提交'>"; } } // 关闭数据库连接 $conn->close(); ?>
<?php if ($_SERVER['REQUEST_METHOD'] === 'POST') { // 连接数据库 $conn = new mysqli('localhost', 'username', 'password', 'questionnaires'); if ($conn->connect_error) { die("连接数据库失败:" . $conn->connect_error); } // 处理用户答案 foreach ($_POST as $key => $value) { if (strpos($key, 'answer') === 0) { $questionId = substr($key, 6); $answer = is_array($value) ? implode(", ", $value) : $value; $sql = "INSERT INTO answers (question_id, answer) VALUES ($questionId, '$answer')"; if ($conn->query($sql) !== TRUE) { echo "插入答案失败:" . $conn->error; } } } // 关闭数据库连接 $conn->close(); } ?>
Atas ialah kandungan terperinci Cara menggunakan PHP untuk membangunkan fungsi soal selidik dalam talian. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!