diff --git a/Database files/tblPriceRangeForLowerHhall.csv b/Database files/tblPriceRangeForLowerHhall.csv
new file mode 100644
index 0000000000000000000000000000000000000000..48b24993ad62928d45eb6bc635bcdac3481db73a
--- /dev/null
+++ b/Database files/tblPriceRangeForLowerHhall.csv	
@@ -0,0 +1,5 @@
+,Morning Show (between 8am – noon),Afternoon Shows (From noon – 1700),Evening Shows (From 1700 – midnight)
+Birmingham,£5.00,£6.00,£7.00
+Bristol,£6.00,£7.00,£8.00
+Cardiff,£5.00,£6.00,£7.00
+London,£10.00,£11.00,£12.00
\ No newline at end of file
diff --git a/GUI.py b/GUI.py
index c5fc2e55321649210afadf78cd918a48423c1053..8d085a0824a07cc08dabfd7d2d8a9fda9e7bb977 100644
--- a/GUI.py
+++ b/GUI.py
@@ -78,16 +78,22 @@ login_button = Button(form_frame, text="Login", command=login, bg=current_theme[
 theme_toggle_button = Button(form_frame, text="Toggle Light/Dark Mode", command=toggle_theme, 
                              bg=current_theme["button_bg"], fg=current_theme["button_fg"])
 
-# Place widgets on the screen
-login_label.grid(row=0, column=0, columnspan=2, pady=(10, 10))
-username_label.grid(row=1, column=0, padx=5, pady=5, sticky="e")
-username_entry.grid(row=1, column=1, padx=5, pady=5, sticky="w")
-password_label.grid(row=2, column=0, padx=5, pady=5, sticky="e")
-password_entry.grid(row=2, column=1, padx=5, pady=5, sticky="w")
-login_button.grid(row=3, column=0, columnspan=2, pady=(10, 10))
-theme_toggle_button.grid(row=4, column=0, columnspan=2, pady=(10, 10))
+def main():
+    # Place widgets on the screen
+    login_label.grid(row=0, column=0, columnspan=2, pady=(10, 10))
+    username_label.grid(row=1, column=0, padx=5, pady=5, sticky="e")
+    username_entry.grid(row=1, column=1, padx=5, pady=5, sticky="w")
+    password_label.grid(row=2, column=0, padx=5, pady=5, sticky="e")
+    password_entry.grid(row=2, column=1, padx=5, pady=5, sticky="w")
+    login_button.grid(row=3, column=0, columnspan=2, pady=(10, 10))
+    theme_toggle_button.grid(row=4, column=0, columnspan=2, pady=(10, 10))
 
-# Enable to use theme
-apply_theme()
+    # Enable to use theme
+    apply_theme()
+
+    window.mainloop()
+    
 
-window.mainloop()
+# app will only launch if run directly from this file.
+if __name__ == "__main__":
+    main()
\ No newline at end of file
diff --git a/dbfunc.py b/dbfunc.py
new file mode 100644
index 0000000000000000000000000000000000000000..c8e13fe14b803591e34cfddc24833a63a933989d
--- /dev/null
+++ b/dbfunc.py
@@ -0,0 +1,41 @@
+import mysql.connector
+from mysql.connector import errorcode
+
+
+# Vars
+hostname = "localhost"
+username = ""
+passwd = ""
+
+
+def getConnection(db=""):
+    if db != "":
+        
+        try:
+            conn = mysql.connector.connect(host = hostname,
+                user = username,
+                password = passwd,
+                database = db)
+        except mysql.connector.Error as err:
+            if err.errno == errorcode.ER_ACCESS_DENIED_ERROR:
+                print("Username or Password is not working")
+            elif err.errno == errorcode.ER_BAD_DB_ERROR:
+                print("Database dose not exist")
+            else:
+                print(err)
+        else:
+            print("Connected to server.")
+            return conn
+    else:
+        try:
+            conn = mysql.connector.connect(host = hostname,
+                user = username,
+                password = passwd)
+        except mysql.connector.Error as err:
+            if err.errno == errorcode.ER_ACCESS_DENIED_ERROR:
+                print("Username or Password is not working")
+            else:
+                print(err)
+        else:
+            print("Connected to server, without database.")
+            return conn
\ No newline at end of file