-
Notifications
You must be signed in to change notification settings - Fork 0
/
server.py
148 lines (100 loc) · 4.22 KB
/
server.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
import os
import sqlite3
from flask import Flask, render_template, request
app = Flask(__name__, static_folder='./static', template_folder='./templates')
connection = sqlite3.connect("Appointments.db")
# Code to delete a record from the database
@app.route('/delete', methods=['POST'])
def delete():
# Create a connection object
connection = sqlite3.connect("Appointments.db")
# From the connection object, create a cursor object
cursor = connection.cursor()
# Using the cursor object, call the execute method with select query as the parameter
cursor.execute("DELETE FROM bookings WHERE id = ?", (request.form['id'],))
# Commit the changes to the database
connection.commit()
# Fetch all rows from the result set
cursor.execute("SELECT * FROM bookings;")
rows = cursor.fetchall()
# Close the connection
connection.close()
# Redirect to the home page
return render_template("index.html", rows=rows)
@app.route('/Add', methods=['POST'])
def Add():
# Create a connection object
connection = sqlite3.connect("Appointments.db")
cursor = connection.cursor()
file = request.files['image']
# Add values from form fields to the database
cursor.execute("INSERT INTO bookings (name, date, time,image) VALUES (?, ?, ?,?)",
(request.form['name'], request.form['date'], request.form['time'], file.filename))
# save request.form['image'] to a file
folder = 'static'
if not os.path.exists(folder):
os.makedirs(folder)
file.save(os.path.join(folder, file.filename))
connection.commit()
# Fetch all rows from the result set
cursor.execute("SELECT * FROM bookings;")
rows = cursor.fetchall()
# Close the connection
connection.close()
# Render the HTML template with data from SQLite database
return render_template("index.html", rows=rows)
@app.route('/')
def index():
# Create a connection object
connection = sqlite3.connect("Appointments.db")
# From the connection object, create a cursor object
cursor = connection.cursor()
# Using the cursor object, call the execute method with select query as the parameter
cursor.execute(
"SELECT name FROM sqlite_master WHERE type='table' AND name='bookings';")
# Fetch all rows from the result set
rows = cursor.fetchall()
# Fetch all rows from the result set
cursor.execute("SELECT * FROM bookings;")
rows = cursor.fetchall()
# Close the connection
connection.close()
# Render the HTML template with data from SQLite database
return render_template("index.html", rows=rows)
# This route should be used to update the database
@app.route('/update', methods=['POST'])
def update():
# Create a connection object
connection = sqlite3.connect("Appointments.db")
# From the connection object, create a cursor object
cursor = connection.cursor()
# Using the cursor object, call the execute method with select query as the parameter
cursor.execute("UPDATE bookings SET name = ?, date = ?, time = ? WHERE id = ?",
(request.form['name'], request.form['date'], request.form['time'], request.form['id']))
# Commit the changes to the database
connection.commit()
# Fetch all rows from the result set
cursor.execute("SELECT * FROM bookings;")
rows = cursor.fetchall()
# Close the connection
connection.close()
# Redirect to the home page
return render_template("index.html", rows=rows)
# This route should be used to search the data from the database
@app.route('/search', methods=['POST'])
def search():
# Create a connection object
connection = sqlite3.connect("Appointments.db")
# From the connection object, create a cursor object
cursor = connection.cursor()
# Using the cursor object, call the execute method with select query as the parameter
cursor.execute("SELECT * FROM bookings WHERE id = ?",
(request.form['id'],))
# Fetch all rows from the result set
rows = cursor.fetchall()
# Close the connection
connection.close()
# Render the HTML template with data from SQLite database
return render_template("index.html", rows=rows)
if __name__ == '__main__':
app.run(debug=True)