4 messaggi dal 24 gennaio 2012
Buonasera, ho un grosso problema con l'utilizzo di due while.

Ho due tabelle: FigureProfessionali e SchedeMonitoraggio.

In una pagina eseguo un ciclo while per far visualizzare in elenco tutte le figure professionali (IDFiguraProfessionale).
Vorrei che i records rappresentati siano "spuntati" in un checkbox se uguali alla tabella SchedeMonitoraggio.

di seguito il codice fatto fino ad ora:

<%
set rsCercaFiguraProfessionale=server.CreateObject("ADODB.recordset")
sqlCercaFiguraProfessionale="select * from FigureProfessionali"
rsCercaFiguraProfessionale.open sqlCercaFiguraProfessionale, Connessione
While Not rsCercaFiguraProfessionale.EOF
%>
<input type="checkbox" name="<%=rsCercaFiguraProfessionale.fields("IDFiguraProfessionale")%>" style="width:20px; height:20px;" value="true">

<%
rsCercaFiguraProfessionale.MoveNext()
wend
rsCercaFiguraProfessionale.close()
%>

spero di essere stato chiaro...
Grazie in anticipo
Claudio
11.886 messaggi dal 09 febbraio 2002
Contributi
ciao Claudio,

claudiofesta ha scritto:

Vorrei che i records rappresentati siano "spuntati" in un checkbox se uguali alla tabella SchedeMonitoraggio.

Ok, dovresti modificare la tua query SQL in modo da includere anche la tabella SchedeMonitoraggio, in cui si trova l'informazione che ti dice se la checkbox va spuntata o no.

Purtroppo non so che relazione esista tra FigureProfessionali e SchedeProfessionali quindi non posso fornirti un esempio preciso. So solo che dovrai fare una JOIN tra le due tabelle. Cerca di carpire l'intento di questa query, anziché copiarla tale e quale.
sqlCercaFiguraProfessionale="select f.IDFiguraProfessionale, s.IDSchedaMonitoraggio from FigureProfessionali as f LEFT JOIN SchedeMonitoraggio as s ON f.IDSchedaMonitoraggio=s.IDSchedaMonitoraggio"

In questo modo, nel recordset ti troverai sia l'id che arriva da FigureProfessionali, che l'ID della scheda professionale (se esistente).
Se tale ID è Nothing, significherà che non stata trovata alcuna riga corripondente nella tabella SchedeMonitoraggio e quindi, questa assenza di valore, dovrebbe indicarti che la checkbox non va spuntata.

Modifica così il codice che usi per stampare la checkbox
Dim spuntato
While Not rsCercaFiguraProfessionale.EOF 
'Se l'IDSchedaMonitoraggio è vuoto, la casella non andrà spuntata
If rsCercaFiguraProfessionale.fields("IDSchedaMonitoraggio") Is Nothing Then
spuntato = ""
Else
spuntato = " checked=""checked"""
End if
%>
<input type="checkbox" name="<%=rsCercaFiguraProfessionale.fields("IDFiguraProfessionale")%>" style="width:20px; height:20px;" value="true"<%= spuntato %>>

<%
rsCercaFiguraProfessionale.MoveNext()
wend


ciao,
Moreno

Enjoy learning and just keep making

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.