无法使用python从与选择框中的选定值对应的数据库中获取特定表

2024-09-25 02:25:29 发布

您现在位置:Python中文网/ 问答频道 /正文

这个问题可能是重复的,但我已经检查了这些相关问题的所有答案,但我无法解决它。 我试图从下拉菜单中获取该值,并从数据库中检索与该值对应的特定表。 这是python文件

import mysql.connector
mydb = mysql.connector.connect(
  host="localhost",
  user="root",
  passwd="mysql",
  database="SugeryClinicDataBase"
)
mycursor = mydb.cursor()

from flask import Flask, redirect, url_for, request,render_template
app = Flask(__name__)

@app.route('/login',methods = ['POST', 'GET'])
def login():
    if request.method == 'POST': ##check if there is post data
       Username = request.form['name']
       Password = request.form['id']
       Selection =  request.form['myselectbox']  
       #value= request.form['']
       if Selection==Patient:
           mycursor.execute= "SELECT * FROM Patients JOIN  DOC_PAT on Patients.id = DOC_PAT.P_code Where Patients.id = PassWord" 
           myresult = mycursor.fetchall()
           for x in myresult:
               print(x)                   
       elif Selection==Doctor:
            mycursor.execute= "SELECT * FROM Doctors " 
            myresult = mycursor.fetchall()
            for x in myresult:
                 print(x)
       else:                 
            return render_template ('doctors.html')        
if __name__ == '__main__':
   app.run()

这里是Html文件

<!DOCTYPE html>

  <form action='' method="POST">
   Username:<br>
    <input type="text" name="name" value="example">
    <br>
   Password :<br>
    <input type="number" name="id" value="10">
    <br>
    Selection : <br>
    <select name="myselectbox" class="form-control" id="exampleFormControlSelect1" value="">
  <br>
     <option value="a">choose</option><br>
     <option value="b">Patient</option><br>
     <option value="c">Doctor</option><br>
     <option value="d">Other</option>

     </select>
    <br> <br>
    <input type="submit" value="Submit">
  </form> 

I am facing this error :
NameError: global name 'Patient' is not defined


Tags: namebrformidappforifvalue