Maison >base de données >tutoriel mysql >Comment développer un questionnaire en ligne simple en utilisant MySQL et Python

Comment développer un questionnaire en ligne simple en utilisant MySQL et Python

WBOY
WBOYoriginal
2023-09-20 11:18:35869parcourir

Comment développer un questionnaire en ligne simple en utilisant MySQL et Python

Comment développer un questionnaire en ligne simple à l'aide de MySQL et Python

Introduction
Les questionnaires en ligne sont largement utilisés dans la société moderne pour recueillir les points de vue, les commentaires et les opinions des utilisateurs. Cet article expliquera comment utiliser MySQL et Python pour développer un système de questionnaire en ligne simple et fournira des exemples de code pertinents.

1. Conception de la base de données

  1. Créez une base de données nommée enquête :

    CREATE DATABASE survey;
  2. Créez des tableaux nommés questions et réponses :
    Créez un tableau de questions pour stocker les questions du questionnaire :

    CREATE TABLE questions (
     id INT PRIMARY KEY AUTO_INCREMENT,
     question_text VARCHAR(255) NOT NULL
    );

    Créez un tableau de réponses, utilisé pour stocker les réponses de l'utilisateur :

    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. Implémentation du code Python

  1. Importer les bibliothèques nécessaires :

    import mysql.connector
    from mysql.connector import Error
    from flask import Flask, request, render_template
  2. Connecter à la base de données 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. Créer l'application Flask et le routage :

    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()
  4. Créez la page front-end (index.html) :

    <!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>

3. Exécutez et testez

  1. Exécutez le code Python dans le terminal :

    python survey_app.py
  2. Visitez http://localhost:5000 dans le navigateur, vous pouvez voir la page du questionnaire.

Conclusion
Cet article présente comment utiliser MySQL et Python pour développer un système de questionnaire en ligne simple. Grâce à la conception de la base de données et à la mise en œuvre du code associé, les opinions, commentaires et opinions des utilisateurs peuvent être facilement collectés. En enrichissant la conception et les fonctionnalités de la page d’accueil, l’expérience utilisateur du questionnaire peut être encore améliorée. J'espère que cet article pourra être utile aux lecteurs et inspirer des idées plus innovantes.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn