Bonjour à tous,

je travaille actuellement sur l'interface web de ma base de données, j'aimerai pourvoir donner à l'utilisateur la possibilité de choisir un nombre, et que ce nombre soit passé en argument de ma requête SQL.

J'ai essayé de multiples combinaisons de synthaxes mais je ne m'en sors pas, voici les deux bouts de codes.

Création du formulaire :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 # Creation de la liste
    print "<select NAME=ID>"
 
    print"<option> 5"
    print "<option> 10"
    print"<option> 50"
    print "<option> 100"
    print "</select>"
Vérification de l'ID d'entrée + requête :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
 try:
        connecteur = psycopg2.connect("dbname='ma_base' host='localhost' user='postgres' password='******'")
    except:
        print "Erreur"
 
    form =cgi.FieldStorage()
    if form.has_key('ID') and form['ID'].value != "":
        valeurs=form['ID'].value
 
    cur = connecteur.cursor(cursor_factory=psycopg2.extras.DictCursor)
 
    try : 
        cur.execute("select distinct gene.nom, gene.idensembl from public.gene, public.voisinnage where public.gene.idensembl = public.voisinnage.idensembl and nbcopies >'valeurs'")
    except Exception, e:
        print e
je définis donc que valeurs contiendra les différentes options possibles (5,10...) mais lorsque j'execute ce code j'obtiens cela :
invalid input syntax for integer: "valeurs" LINE 1: ...nsembl = public.voisinnage.idensembl and nbcopies >'valeurs' ^
Peu être pourriez vous m'aidez quant à la synthaxe.

Merci à vous