首頁 >後端開發 >php教程 >如何透過PHP編寫一個簡單的線上問卷調查系統

如何透過PHP編寫一個簡單的線上問卷調查系統

王林
王林原創
2023-09-24 10:21:041459瀏覽

如何透過PHP編寫一個簡單的線上問卷調查系統

如何透過PHP寫一個簡單的線上問卷調查系統

隨著網路的發展和普及,越來越多的人開始傾向於透過網路來進行各種調查和問卷調查。為了滿足這項需求,我們可以透過PHP語言編寫一個簡單的線上問卷調查系統。本文將介紹如何使用PHP實現一個基本的問卷調查系統,並提供具體的程式碼範例。

  1. 資料庫設計
    首先,我們需要設計一個資料庫來儲存問卷調查的相關資料。我們可以使用MySQL資料庫。設計的資料庫表包括"questions"、"options"和"responses"三個資料表。

a. questions表:用於儲存所有問題的相關信息,包括問題的ID、問題的內容等。

CREATE TABLE questions (

id INT AUTO_INCREMENT PRIMARY KEY,
question_text TEXT

);

#b. options表:用於儲存每個問題的選項內容和對應的問題ID。

CREATE TABLE options (

id INT AUTO_INCREMENT PRIMARY KEY,
option_text TEXT,
question_id INT

);

c. responses表:用於儲存使用者的回答結果。包括回答的ID、回答的內容等。

CREATE TABLE responses (

id INT AUTO_INCREMENT PRIMARY KEY,
response_text TEXT,
question_id INT

);

  1. 顯示問卷頁面
    透過PHP編寫一個頁面來顯示問卷,使用者可以在頁面上回答問題並提交結果。以下是一個簡單的範例程式碼:
<!DOCTYPE html>
<html>
<head>
    <title>问卷调查</title>
</head>
<body>

<?php
// 连接数据库
$conn = mysqli_connect("localhost", "username", "password", "database");

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

// 显示问题列表
while ($row = mysqli_fetch_assoc($result)) {
    echo "<h2>".$row['question_text']."</h2>";
    echo "<ul>";
    
    // 获取问题的选项
    $query = "SELECT * FROM options WHERE question_id=".$row['id'];
    $options_result = mysqli_query($conn, $query);
    
    // 显示问题的选项
    while ($option_row = mysqli_fetch_assoc($options_result)) {
        echo "<li><input type='radio' name='option' value='".$option_row['id']."'/>".$option_row['option_text']."</li>";
    }
    
    echo "</ul>";
}

// 关闭数据库连接
mysqli_close($conn);
?>

<button type="submit" name="submit">提交</button>

</body>
</html>

在上述範例程式碼中,我們先連接資料庫,並取得問題清單。然後,透過查詢取得問題的選項,並在頁面上顯示問題及其選項。最後,我們提供一個提交按鈕供用戶提交答案。

  1. 處理使用者提交的結果
    當使用者點擊提交按鈕後,我們需要處理使用者提交的結果,並將其儲存到資料庫中。以下是一個簡單的範例程式碼:
<?php
// 连接数据库
$conn = mysqli_connect("localhost", "username", "password", "database");

// 检查是否有用户提交的结果
if (isset($_POST['submit'])) {
    // 获取用户选择的选项ID
    $option_id = $_POST['option'];
    
    // 将用户的回答存储到数据库中
    $query = "INSERT INTO responses (response_text, question_id) VALUES ('$option_id', 'question_id_value')";
    mysqli_query($conn, $query);
    
    echo "谢谢你的参与!";
}

// 关闭数据库连接
mysqli_close($conn);
?>

在上述範例程式碼中,我們先檢查是否有使用者提交的結果。如果有,我們取得使用者選擇的選項ID,並將其儲存到資料庫中。

透過以上的步驟,我們就可以透過PHP編寫一個簡單的線上問卷調查系統。當然,這只是一個基本的範例,你可以根據自己的需求進行適當的修改和擴展。希望本文對你有幫助!

以上是如何透過PHP編寫一個簡單的線上問卷調查系統的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn