ホームページ  >  記事  >  データベース  >  MySQL と Python を使用して簡単なオンライン アンケートを開発する方法

MySQL と Python を使用して簡単なオンライン アンケートを開発する方法

WBOY
WBOYオリジナル
2023-09-20 11:18:35843ブラウズ

MySQL と Python を使用して簡単なオンライン アンケートを開発する方法

MySQL と Python を使用して簡単なオンライン アンケートを開発する方法

はじめに
オンライン アンケートは、ユーザー情報を収集するために現代社会で広く使用されています。コメント。この記事では、MySQL と Python を使用して簡単なオンライン アンケート システムを開発する方法を紹介し、関連するコード例を示します。

1. データベース設計

  1. アンケートという名前のデータベースを作成します:

    CREATE DATABASE survey;
  2. 質問と回答テーブルという名前のデータベースを作成します:
    アンケートの質問を保存するために使用する質問テーブルを作成します:

    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 コードの実装

  1. 必要なライブラリをインポートします:

    import mysql.connector
    from mysql.connector import Error
    from flask import Flask, request, render_template
  2. #MySQL データベースに接続します:

    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

  3. # #Flask アプリケーションを作成しますおよびルーティング:
  4. 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()

  5. フロントエンド ページ (index.html) の作成:
  6. <!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>

  7. 3. 実行してテスト

    ターミナルで Python コードを実行します:
  1. python survey_app.py

    ブラウザで http://localhost:5000 にアクセスして、アンケート ページを表示します。
  2. 結論
この記事では、MySQL と Python を使用して簡単なオンライン アンケート システムを開発する方法を紹介します。データベースの設計と関連コードの実装を通じて、ユーザーの意見、フィードバック、意見を簡単に収集できます。フロントエンドページのデザインや機能を充実させることで、アンケートのユーザーエクスペリエンスをさらに向上させることができます。この記事が読者の役に立ち、より革新的なアイデアを生み出すことを願っています。

以上がMySQL と Python を使用して簡単なオンライン アンケートを開発する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。