The code is all messed up in the post above.
Could you repost to pastebin.com for example and copy the link here?.
On Mar 27, 8:09 pm, niknok wrote:
> I have this function that displays several fields from two databases.
> but I couldn't get it to do the following:
>
> 1) the "previous question" button actually causes an error. how come
> my session.item_id is always zero when I thought I was passing an
> incrementing value session.item_id+1 .
>
> 2) when i select a value from the dropdown list get an error saying
> that I chose the wrong value
>
> 3) i am thinking of collecting the answers in an array so i can check
> the answers before storing them as a records in a database. how do i
> do that?
>
> i look forward to your suggestions to make this move forward.
>
> def quiz():
> item_id =int(request.args(0) or 0)
>
> if item_id == 0:
> False).select(orderby='')
> # Females = db(db.questionnaire.id>0
> ).select(orderby='')
> print request.args(0), item_id, 'retrieving'
> query = db(db.questionnaire.id>0).select(orderby='')
> query_t = db(db.questionnaire_fil.id>0).select()
>
> form = SQLFORM.factory(
> Field('default', 'text', writable=False,
> default=query[item_id]
> ['dialog']),
> Field('locale', 'text', writable=False,
> default=query_t[int(query[item_id]['dialog_id']-1)]['dialog']),
> Field('answer', 'list:string',
>
> requires=IS_IN_SET(query_t[int(query[item_id]['dialog_id'])-1]
> ['choices'], zero=None, multiple=True)),
> _style='width:400px'
> )
>
> form[0][-1][1].append(XML(' '))
> form[0][-1][1].append(INPUT (_type='button',_value=T('Previous
> question'),
>
> _onclick="window.location='%s';"%URL(r=request,args=(item_id-1) or
> 0)))
>
> if form.accepts(request.vars,session):
> if item_id<=len(query):
> response.flash= request.vars, item_id, request.args(0)
> URL(r=request,args=(item_id+1))
> else: URL(r=request, f='quiz_check')
>
> return dict(form=form, item_id=item_id)