Salvesta.py

Allikas: Lambda
#!/usr/bin/python
import sys
import cgi
import sqlite3 as sqlite

databasefile = 'data.db'
tables = ['t0','t1','t2','t3','t4']
fields = ['salvestaja','f0','f1','f2','f3','f4','f5','f6','f7','f8','f9','f10','f11','f12','f13','f14','f15','f16','f17','f18','f19']
    
print 'Content-type: text/plain'
print

try:
  form = cgi.FieldStorage()
  
  if form.has_key('table') and form['table'].value in tables:
    tablename=form['table'].value
  else:
    print "0"
    sys.exit(0) 
  
  query="insert into %s" % tablename

  flds=""
  vals=""  
  for el in fields:
    if form.has_key(el):
      flds=flds+" "+el+","
      vals=vals+" '"+form[el].value.replace('"', ' ').replace("'", " ")+"',"  
  if not flds:
    print "0"

  else:
    if flds[len(flds)-1]==",":
      flds=flds[0:len(flds)-1]
    if vals[len(vals)-1]==",":
      vals=vals[0:len(vals)-1]    
    query=query+"("+flds+") values ("+vals+")"   

    #print query # uncomment for debugging

    con = sqlite.connect(databasefile)
    cur = con.cursor()
    cur.execute(query)
    con.commit()
    print "1"
except Exception, e:
  #print e # uncommment for debugging
  print "0"