Beginner PyGTK and MySQL abuse request

T

Tom Wesley

Hey,

I've spent far too long being spoilt by a relatively simplistic "just do
it" style of database application in use at work and have decided to try
my hand at some Python + MySQL + GTK over the next few days.

I've managed to steal/write a short script that asks for some input and
searches a database and print the results and was wondering if people
would have the time to suggest better ways of doing the limited set of
things it does?

---search.py---
#!/usr/bin/env python

import pygtk
pygtk.require('2.0')
import gtk
import adodb

class AddressSearch:
def delete_event(self, widget, data=None):
gtk.main_quit()
return gtk.FALSE

def btn_search(self, widget, data=None):
conn = adodb.NewADOConnection('mysql')
conn.Connect('localhost','root','','rtl')

sql = "select * from address where match(Address1, Address2, Address3,
Address4, Address5) against('+" + self.entry_address1.get_text() + "+" +
self.entry_address2.get_text() + "+" + self.entry_address3.get_text() +
"' in boolean mode);"
print sql
cursor = conn.Execute(sql)
while not cursor.EOF:
arr = cursor.GetRowAssoc(0)
print arr['rtlforename'], arr['rtlsurname']
cursor.MoveNext()

cursor.Close()
conn.Close()

def __init__(self):
self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
self.window.set_title("Address search")
self.window.connect("delete_event", self.delete_event)
self.window.set_border_width(20)

table = gtk.Table(5, 2, gtk.TRUE)
self.window.add(table)

label = gtk.Label("Address:")
table.attach(label, 0, 1, 1, 5)
self.entry_address1 = gtk.Entry(max=80)
table.attach(self.entry_address1, 1, 2, 0, 1)
self.entry_address2 = gtk.Entry(max=80)
table.attach(self.entry_address2, 1, 2, 1, 2)
self.entry_address3 = gtk.Entry(max=80)
table.attach(self.entry_address3, 1, 2, 2, 3)

button = gtk.Button(label='Search', stock=gtk.STOCK_OK)
button.connect("clicked", self.btn_search)
table.attach(button, 0, 1, 3, 4)

button = gtk.Button(label="Quit", stock=gtk.STOCK_QUIT)
button.connect("clicked", self.delete_event)
table.attach(button, 1, 2, 3, 4)

self.window.show_all()

def main():
gtk.main()
return 0

if __name__ == "__main__":
AddressSearch()
main()
---end---


Cheers,
Tom
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,769
Messages
2,569,580
Members
45,053
Latest member
BrodieSola

Latest Threads

Top