On 11/06/2013 21:20, Νικόλαος Κούρας wrote:
[code]
                if not re.search( '=', name ) and not re.search( '=', month ) 
and not re.search( '=', year ):
                        cur.execute( '''SELECT * FROM works WHERE clientsID = 
(SELECT id FROM clients WHERE name = %s) and MONTH(lastvisit) = %s and 
YEAR(lastvisit) = %s ORDER BY lastvisit ASC''', (name, month, year) )
                elif not re.search( '=', month ) and not re.search( '=', year ):
                        cur.execute( '''SELECT * FROM works WHERE 
MONTH(lastvisit) = %s and YEAR(lastvisit) = %s ORDER BY lastvisit ASC''', 
(month, year) )
                elif not re.search( '=', year ):
                        cur.execute( '''SELECT * FROM works WHERE 
YEAR(lastvisit) = %s ORDER BY lastvisit ASC''', year )
                else:
                        print('''<h2>Πώς να γίνει αναζήτηση αφού δεν επέλεξες 
ούτε πελάτη ούτε μήνα ή τουλάχιστον το έτος?''')
                        print( '''<meta http-equiv="REFRESH" 
content="5;/cgi-bin/pelatologio.py">''' )
                        sys.exit(0)

                data = cur.fetchall()
                
                hits = money = 0
                
                for row in data:
                        hits += 1
                        money = money + row[2]

......
......
selects based on either name, month, year or all of them
[/code]


The above if structure works correctly *only* if the user sumbits by form:

name, month, year
or
month, year

If, he just enter a year in the form and sumbit then, i get no error, but no 
results displayed back.

Any ideas as to why this might happen?

What are the values of 'name', 'month' and 'year' in each of the cases?
Printing out ascii(name), ascii(month) and ascii(year), will be helpful.

Then try stepping through those lines in your head.
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to