purtoppo nel mio caso non posso farlo.. o almeno credo di non poterlo fare..
Ti spiego:
Si tratta di uno script per fare un sondaggio. Ho due tabelle nel database:
"sondaggi" e "voti"
nella tabella sondaggi ci sono 6 campi:
id-domanda-risposta1-risposta2-risposta3-data
nella tabella voti ci sono 4 campi:
id-opzione1-opzione2-opzione3
lo script completo è questo: (ho cambiato la select come dici tu ma mi dà sempre lo stesso problema (database o oggetto di solalettura) :(
<%
'prima di iniziare l'elaborazione, eseguo un controllo in maniera
'da bloccare l'esecuzione e stampare a video un messaggio di errore
' nel caso l'utente abbia gia votato o non abbia
'selezionato nessuna opzione. Il controllo è basato sui cookie.
'estraggo dal cookie il valore
dim controllo
controllo = Request.Cookies("sondaggio")("controllo")
'se la variabile controllo è uguale a 1 l'utente ha gia votato
if controllo = 1 then
Response.Write "Hai gia votato"
'controllo se è stata selezionata un'opzione nel form
elseif request.form("voto") = "" then
Response.Write "Non hai ancora votato..? Fallo adesso!"
else
'l'utente non ha ancora votato, quindi creiamo il cookie in
'maniera da bloccare la votazione in futuro
Response.Cookies("sondaggio")("controllo") = 1
'ci connettiamo al database
dim rsvoti
set rsvoti = Server.CreateObject("ADODB.Recordset")
sqlvoti="select voti.id as voti_id, voti.opzione1, voti.opzione2, voti.opzione3, sondaggi.* from voti, sondaggi where voti.id=sondaggi.id"
rsvoti.Open sqlvoti, conn,3,3
'prendiamo tutti i valori dal database
dim opzione1, opzione2, opzione3, voto
opzione1= rsvoti.fields("opzione1")
opzione2= rsvoti.fields("opzione2")
opzione3= rsvoti.fields("opzione3")
'prende il valore dal form
voto = request.form("voto")
'controllo il valore che ha la variabile voto, ossia la votazione
'fatta dall'utente, e dopo aver incrementato di 1 il valore presente
'nel database, lo aggiorno
Select Case voto
Case "primo"
opzione1 = opzione1 + 1
rsvoti("opzione1")=(opzione1)
rsvoti.Update
Case "secondo"
opzione2 = opzione2 + 1
rsvoti("opzione2")=(opzione2)
rsvoti.Update
Case "terzo"
opzione3 = opzione3 + 1
rsvoti("opzione3")=(opzione3)
rsvoti.Update
End Select
'libero risorse
'rsvoti.close
'set rsvoti = nothing
'calcolo la somma dei valori presenti nel database
dim total, unoper, dueper, treper
total= CDbl((opzione1)+(opzione2)+(opzione3))
'per ogni valore calcolo la percentuale visualizzando solo un valore
' dopo la virgola
unoper = FormatPercent((opzione1 / total), 1)
dueper = FormatPercent((opzione2 / total), 1)
treper = FormatPercent((opzione3 / total), 1)
'prendo le percentuali dei voti e li converto in interi.
' Questo servirà per visualizzare la barra nel grafico.
dim unobarra, duebarra, trebarra
unobarra = FormatNumber(unoper) * 100
duebarra = FormatNumber(dueper) * 100
trebarra = FormatNumber(treper) * 100
%>
Prima di questo script apro un altro recordset selezionando la tabella "sondaggi" per stampare domanda e risposte.. (una semplice select)
Mi puoi aiutare? ;)