MySQL と Python を使用して簡単なオンライン アンケートを開発する方法
はじめに
オンライン アンケートは、ユーザー情報を収集するために現代社会で広く使用されています。コメント。この記事では、MySQL と Python を使用して簡単なオンライン アンケート システムを開発する方法を紹介し、関連するコード例を示します。
1. データベース設計
アンケートという名前のデータベースを作成します:
CREATE DATABASE survey;
質問と回答テーブルという名前のデータベースを作成します:
アンケートの質問を保存するために使用する質問テーブルを作成します:
CREATE TABLE questions ( id INT PRIMARY KEY AUTO_INCREMENT, question_text VARCHAR(255) NOT NULL );
ユーザーの回答を保存するために使用する回答テーブルを作成します:
CREATE TABLE responses ( id INT PRIMARY KEY AUTO_INCREMENT, question_id INT, response_text VARCHAR(255) NOT NULL, FOREIGN KEY (question_id) REFERENCES questions(id) );
2. Python コードの実装
必要なライブラリをインポートします:
import mysql.connector from mysql.connector import Error from flask import Flask, request, render_template
def create_connection(): connection = None try: connection = mysql.connector.connect( host='localhost', database='survey', user='your_username', password='your_password' ) if connection.is_connected(): print('Connected to MySQL database') except Error as e: print(e) return connection
app = Flask(__name__) @app.route('/') def home(): # 获取所有的问题 connection = create_connection() cursor = connection.cursor() query = 'SELECT * FROM questions' cursor.execute(query) questions = cursor.fetchall() cursor.close() connection.close() return render_template('index.html', questions=questions) @app.route('/survey', methods=['POST']) def survey(): # 获取用户的答案 connection = create_connection() cursor = connection.cursor() response_text = request.form['response'] question_id = request.form['question_id'] query = 'INSERT INTO responses (question_id, response_text) VALUES (%s, %s)' cursor.execute(query, (question_id, response_text)) connection.commit() cursor.close() connection.close() return 'Thank you for your response!' if __name__ == '__main__': app.run()
<!DOCTYPE html> <html> <head> <title>Survey</title> </head> <body> <h1>Survey</h1> <form action="/survey" method="POST"> {% for question in questions %} <p>{{ question[1] }}</p> <input type="hidden" name="question_id" value="{{ question[0] }}"> <input type="text" name="response" required> {% endfor %} <input type="submit" value="Submit"> </form> </body> </html>
python survey_app.py
以上がMySQL と Python を使用して簡単なオンライン アンケートを開発する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。