Ciao a tutti, ho una pagina asp con un piccolo motore di ricerca interno, che in base ai campi riempiti nella form, effettua ogni volta ricerche su tre tabelle diverse (progetti, schede e retini).
Il problema è che la pagina funziona perfettamente testandola in locale, mentre mettendola online su aruba, dà errore su tutte le subquery!
VVoVe:
Posto il pezzo di codice "incriminato":
codice:
'####################################################################
'RICERCA
'####################################################################
parametri = " "
if request ("tipology") <> "000" and request ("tipology") <> "" then
query_sql="SELECT progetti.codice, progetti.nome as nome, tipologiep.nome as nomet FROM progetti INNER JOIN (tipologiep INNER JOIN tip_prog ON tipologiep.id = tip_prog.id_tip) ON progetti.codice = tip_prog.id_prog WHERE tipologiep.id = '"& request("tipology") & "'"
query_acc ="SELECT progetti.codice FROM progetti INNER JOIN (tipologiep INNER JOIN tip_prog ON tipologiep.id = tip_prog.id_tip) ON progetti.codice = tip_prog.id_prog WHERE tipologiep.id = '"& request("tipology") & "'"
elseif request("code") <> "" then
parametri = parametri & "and codice like '%" & request("code") & "%' "
query_sql="select * from progetti where 1 = 1 " & parametri & " order by codice"
query_acc="select codice from progetti where 1 = 1 " & parametri & " order by codice"
elseif request("name") <> "" then
parametri = parametri & "and nome like '%" & request("name") & "%' "
query_sql="select * from progetti where 1 = 1 " & parametri & " order by codice"
query_acc="select codice from progetti where 1 = 1 " & parametri & " order by codice"
elseif request("screencode")<>"" then
query_sql="select * from progetti where codice IN ( select id_prog from prog_ret where id_ret LIKE '%" & request("screencode") &"%' );"
query_acc="select codice from progetti where codice IN ( select id_prog from prog_ret where id_ret LIKE '%" & request("screencode") &"%' );"
elseif request("datasheet") <>"" then
query_sql="select * from progetti where codice IN (select cod_prog from schede where codice ='" & request("datasheet") & "')"
query_acc="select codice from progetti where codice IN (select cod_prog from schede where codice ='" & request("datasheet") & "')"
else
query_sql = "select * from progetti where 1=2 order by codice"
query_acc = "select codice from progetti where 1=2 order by codice"
end if
'####################################################################
'VISUALIZZAZIONE ELENCO SCHEDE TECNICHE
'####################################################################
if request("datasheet")<>"" then
query_sql_m= "SELECT codice FROM schede WHERE codice = '"& request("datasheet") & "'"
elseif request("screencode")<>"" then
query_sql_m= "SELECT id_scheda FROM applicazioni WHERE id_ret ='" &request("screencode") &"'"
else
query_sql_m= "SELECT schede.codice FROM schede WHERE cod_prog IN ( " & query_acc & ");"
end if
set rs_m=server.CreateObject("ADODB.recordset")
'response.write (query_sql_m)
'response.end
rs_m.Open query_sql_m,connection,3,3
'####################################################################
'VISUALIZZAZIONE ELENCO RETINI ED ANTEPRIME
'####################################################################
if request("screencode")<>"" then
query_sql_r= "select codice as retino from retini where codice LIKE '%" & request("screencode") &"%';"
elseif request("datasheet")<>"" then
query_sql_r= "select id_ret as retino from applicazioni where id_scheda in (" & query_sql_m & ");"
else
query_sql_r= "SELECT id_ret as retino FROM prog_ret WHERE id_prog IN ( " & query_acc & ");"
end if
set rs_r=server.CreateObject("ADODB.recordset")
'response.write (query_sql_m)
'response.end
rs_r.Open query_sql_r,connection,3,3 if not rs_r.EoF then
do while not rs_r.EoF
filenamer= rs_r.fields("retino") & "_s.jpg"
set fileCreater=CreateObject("Scripting.FileSystemObject") 'crea l'oggetto
Existentfiler=fileCreater.FileExists(Server.MapPath("admin/immagini/"&filenamer))
if Existentfiler= true then
immaginer= "admin/immagini/"&filenamer
else
immaginer="admin/immagini/vuota.gif"
end if
elencor= elencor & " " & Ucase(rs_r.fields("retino")) & "
"
anteprimar= anteprimar & "[img]"& immaginer & "[/img]" & bgcol
rs_r.movenext
loop
end if
'####################################################################
'CREAZIONE RS, CONTROLLO IMMAGINI, GENERAZIONE STRINGHE ELENCO DX
'####################################################################
set rs=server.CreateObject("ADODB.recordset")
'response.write (query_sql)
'response.end
rs.Open query_sql,connection,3,3
pippo = ""
do while not rs.eof
filename= rs.fields("codice") & "_s.jpg"
set fileCreate=CreateObject("Scripting.FileSystemObject") 'crea l'oggetto
Existentfile=fileCreate.FileExists(Server.MapPath("admin/immagini/"&filename))
if Existentfile= true then
immagine= "admin/immagini/"&filename
else
immagine="admin/immagini/vuota.gif"
end if
elencop= elencop & " " & Ucase(rs.fields("codice")) & " - " & Ucase(rs.fields("nome")) & "
"
anteprimap= anteprimap & "[img]"& immagine & "[/img]" & bgcol
rs.movenext
loop
rs.close
set rs=nothing
if request("id") <> "" then
id = request("id")
else
id = 0
end if
%>
In rosso le query che danno questo errore:
Microsoft OLE DB Provider for ODBC Drivers error '80040e21' ODBC driver does not support the requested properties
Il db è mySql.
Qualcuno ci capisce qualcosa?