Ciao a tutti
sto cercando di visualizzare una classifica di un torneo diviso in gironi. La visualizzazione dovrebbe essere così:
TORNEO
Nome torneo
Girone A
Sq1
Sq2
Sq3
Sq4
Girone B
Sq5
Sq6
Sq7
Sq8
Girone C
Sq9
Sq10
Sq11
Sq12
etc...
Per poter fare questa cosa ho creato 2 tabelle:
TabTorneo
TabClassifica
In TabTorneo ho inserito il campo NOME_TORNEO e FLAG_TORNEO che ho fatto diventare checkbox. Se il torneo ha la check (la spunta) allora faccio visualizzare i dati di quel torneo.
In TabClassifica ho i campi:
NOME_TORNEO
NOME_SQUADRA
GIRONE
PUNTEGGIO
Il codice della mia pagina è questo:
INIZIO
----------------------------------------------------
<%
'Dichiaro il recordset
Dim rs_Torneo_dx
'Creo il recordset
Set rs_Torneo_dx = Server.CreateObject("ADODB.Recordset")
'Dichiaro la stringa Sql
Dim Sql_Torneo_dx
flag_torneo = True
Dim nome_torneo_v_classifica
nome_torneo_v_classifica = ("NOME_TORNEO")
Sql_Torneo_dx = "SELECT * FROM TabTorneo WHERE FLAG_TORNEO = "& flag_torneo &" ORDER BY NOME_TORNEO ASC"
'Apro il recordset, eseguo la stringa Sql e su quale db eseguirla
rs_Torneo_dx.Open sql_Torneo_dx, cn, 1
%>
<table border="5px" bgcolor="#FFcc00" bordercolor="#00CC00">
<tr bgcolor="#FFFFFF">
<td>NOME TORNEO</td>
</tr>
<%
'Se il recordset NON è (end of file) alla fine del file, allora:
While Not rs_Torneo_dx.eof
%>
<tr>
<td><%=rs_Torneo_dx("NOME_TORNEO")%></td>
</tr>
<%
'Vai al prossimo
rs_Torneo_dx.MoveNext
Wend
%>
</table>
<%
'Chiudo il recordset
rs_Torneo_dx.Close
Set rs_Torneo_dx = Nothing
'Chiudo la connessione
cn.Close
Set cn = Nothing
%>
<%
'Dichiaro il recordset
Dim rs_Classifica_dx
'Creo il recordset
Set rs_Classifica_dx = Server.CreateObject("ADODB.Recordset")
'Dichiaro la stringa Sql
Dim Sql_Classifica_dx
Sql_Classifica_dx = "SELECT DISTINCT GIRONE FROM TabClassifica WHERE NOME_TORNEO = '"& nome_torneo_v_classifica &"' ORDER BY PUNTEGGIO DESC"
rs_Classifica_dx.Open Sql_Classifica_dx, cn, 1
%>
<table border="5px" bgcolor="#FFcc00" bordercolor="#00CC00">
<tr bgcolor="#FFFFFF">
<td>Squadra</td><td>Punt.</td><td>Torneo</td>
</tr>
<%
'Se il recordset NON è (end of file) alla fine del file, allora:
While Not rs_Classifica_dx.eof
%>
<tr>
<td><%=rs_Classifica_dx("NOME_SQUADRA")%> </td>
<td><%=rs_Classifica_dx("PUNTEGGIO")%> </td>
<td><%=rs_Classifica_dx("NOME_TORNEO")%> </td>
<td><%=rs_Classifica_dx("GIRONE")%> </td>
</tr>
<%
'Vai al prossimo
rs_Classifica_dx.MoveNext
Wend
%>
</table>
<%
'Chiudo il recordset
rs_Classifica_dx.Close
Set rs_Classifica_dx = Nothing
'Chiudo la connessione
cn.Close
Set cn = Nothing
%>
----------------------------------------------------
FINE
Con questa codice riesco ad estrarre il valore del torneo "legato" a:
flag_torneo = True
ma ottengo anche questo errore:
ADODB.Recordset error '800a0e7d'
The connection cannot be used to perform this operation. It is either closed or invalid in this context.
/include/inc_classifica.asp, line 72
xchè non so come utilizzare la connessione con 2 recordset.
La linea 72 è questa:
rs_Classifica_dx.Open sql_Classifica_dx, cn, 1
Potete aiutarmi?
Pier

Rispondi quotando