Ciao, avrei bisogno di un aiuto a risolvere un problema ASP.
Tramite questa pagina ASP dovrei ottenere questa stringa:
codice:
Risultato: Totale registrati 5000; 3200 Femmine; 1800 Maschi.
Ma non ci riesco, perchè se scrivo:
codice:
response.write strquanti & ";" & strsesso
La pagina va in errore sulla stessa riga:
Tipo di errore:
Errore di run-time di Microsoft VBScript (0x800A000D)
Tipo non corrispondente
Mentre se scrivo:
codice:
response.write strquanti & ";"
Ottengo: 3200;1800;
Cioè solamente i parziali per sesso.
Cosa sbaglio?
Grazie in anticipo.
codice:
<%
Session.LCID = 1040
Set objconn = Server.CreateObject("ADODB.Connection")
objconn.Open "DRIVER={MySQL ODBC 5.1 Driver};SERVER=.........;"
SQL = "SELECT Nome FROM `tbl_online` LIMIT 1;"
Set objRec = objconn.execute(SQL)
strnome = objRec("Nome")
SQL = "SELECT SQL_CALC_FOUND_ROWS "
SQL = SQL & " COUNT(*) As `quanti`, "
SQL = SQL & " CASE WHEN Sesso='F' THEN CONCAT(COUNT(*),' ','Femmine') "
SQL = SQL & " ELSE CONCAT(COUNT(*),' ','Maschi') END `sesso` "
SQL = SQL & " FROM "
SQL = SQL & " `tbl_online` "
SQL = SQL & " WHERE "
SQL = SQL & " 1 "
SQL = SQL & " GROUP BY "
SQL = SQL & " `Sesso`;"
Set rs = Server.CreateObject("ADODB.RecordSet")
rs.Open SQL, objconn
If not rs.eof then
SQL = "SELECT FOUND_ROWS() tot;"
Set objRs = objconn.execute(SQL)
strtot = objRs("tot")
Do while not rs.eof
strquanti = cInt(rs("quanti"))
strsesso = rs("sesso")
response.write strquanti & ";" & strsesso
rs.movenext
Loop
objRs.close
set objRs = nothing
End if
rs.close
set rs = nothing
set objRec = nothing
objconn.Close
set objconn = nothing
%>