Salve a tutti,
ho un problema che mi sta facendo impazzire.
in una pagina asp ho una variabile <%=right%> che viene definita nel file config.asp
Questa variabile deve permettere il caricamento di tag asp quali la connessione ad un recorset e la visualizzazione di una tabella di dati presa da un db access.
Purtroppo non e' possibile annidare i tag asp!
Ho provato ad usare l'istruzione Server.execute(right) e dare a right il path di un file asp ma nulla mi restituisce l'errore:"Gli argomenti non sono di tipo valido, non sono compresi nell'intervallo consentito o sono in conflitto" nella riga in cui setto il recordset (Set rs=server.createObject .... )

Come posso risolvere???? AIUTOOOOOO
3.122 messaggi dal 16 maggio 2002
Non ho capito bene il tuo problema... ma non puoi semplicemente fare

<%
if right="valoredirighe" then
istruzionidiright
else
istruzioninonright
end if %>

?

The day Microsoft makes something that doesn't suck
is probably the day they start making vacuum cleaners.

Get caught!
Get caught again!
Inanzitutto grazie di avermi risposto.
L'obiettivo e' il seguente:
Ho un sito costruito con asp in cui nella pagina page.asp sono inclusi un header.asp, un body.asp e un footer.asp.
Questo file e' il cuore di tutto il sito in quanto io modificando il contenuto del file con istruzioni case nel config gestisco tutti i link.
Nel file body.asp, a seconda dei link che sono stati cliccati viene visulaizzato un contenuto diverso (variabili left e right cioe' parte destra e parte sinistra di una tabella con due celle).
Ora sto organizzando il contenuto prodotti.
Quindi ora la parte sinistra che corrisponde alla variabile left ha come risultato la visualizzazione delle categorie dei prodotti.
quando clicco su una categoria viene passata un'altra variabile che con l'istruzione case nel config.asp mi dovrebbe visualizzare al posto della variabile right i dati inseriti in una tabella access corrispondente alla categoria cliccata.
Ed e' qui che si inceppa il tutto. Gli errori sono quelli che ho postato prima.
Non e' molto facile per me spiegare chiaramente il funzionamento di tutti i file asp collegati.Se preferisci ti mando i file incriminati.
Grazie ancora. A presto
3.122 messaggi dal 16 maggio 2002
Uhm.. come detto prima non puoi semplicemente mettere una condizione sulla variabile che viene passata?
Prova a postare il codice "incriminato" e vediamo che si può fare.

The day Microsoft makes something that doesn't suck
is probably the day they start making vacuum cleaners.

Get caught!
Get caught again!
ecco i file incriminati. Scusa se ho postato tutto ma non sapevo se postando solo parte del codice avresti capito
-----------------------------------inizio body.asp------------------------------
<table width="900" height="460" border="0" cellpadding="0" cellspacing="0" bgcolor="#ffffff">
<tr>
<td colspan="3" bgcolor="#ffffff">
<script language="JavaScript" type="text/JavaScript" >
if (isMac){
document.write('<div align=left style=top:20;position:absolute valign=top><%=head%><img src=images/title_bar_page.gif width=190 height=35>')
}
if (isWin){
document.write('<div align=left valign=top><p><%=head%><img src=images/title_bar_page.gif width=190 height=35></p>')
}
if (isOther){
document.write('<%=head%><img src=images/title_bar_page.gif width=190 height=35>')
}
</script>
</div></td>
<td width="430" rowspan="2" valign="top" align="right"><div align="right">
</div></td>
</tr>
<tr>
<td width="40" bgcolor="#ffffff"></td>
<td width="400" rowspan="2" align="right" valign="bottom"> <script language="JavaScript" type="text/JavaScript" >
if (isMac){
document.write('<div style=width:400px;height:320px;z-index:1;overflow:auto;position:absolute;top:100 align=justify>')
}
if (isWin){
document.write('<div style=width:400px;height:325px;z-index:1;overflow:auto;left:25 align=justify>')
}
if (isOther){
document.write('<div style=width:400px;height:325px;z-index:1;overflow:auto;position:absolute align=justify>')
}
</script> <table width="96%" border="0" cellpadding="3">
<tr>
<td><div align="justify">
<% Server.Execute(left) %>
</div></td>
</tr>
</table></div>
<br>
<div align="left"> </div></td>
<td width="30" rowspan="2" align="right" valign="top">&nbsp;</td>
</tr>
<tr>
<td width="40" height="19" bgcolor="#ffffff"></td>
<td width="430" align="center" valign="top"><br>
<!-- inizio tabella immagini -->
<table width="90%" border="0" cellspacing="0" cellpadding="0" ALIGN="CENTER">
<tr align="center">
<script language="JavaScript" type="text/JavaScript" >
if (isMac){
document.write('<td valign=middle><div align=center style=position:absolute;top:100;left:440><%=rightMac%></div></td></tr>')
}
if (isWin){
document.write('<td><div align=center style=postition:absolute><%server.Execute(right)%></div></td></tr>')
}
if (isOther){
document.write('<td><div align=center style=postition:absolute><%=right%></div></td></tr>')
}
</script>
</table>
<!-- Fine tabella immagini -->
</td>
</tr>
</table>
----------------------------fine body.asp-----------------------------------

-----------------------------inizio config.asp-------------------------

<% Dim link,left,right,rightMac,head,title,ln,Bottom,BotAzienda,BotOzono,BotProdotti,BotContatti,Produttori,BotEcom,BotArea,Top,BotAziendaNoF,BotOzonoNoF,BotProdottiNoF,BotContattiNoF,ProduttoriNoF,BotEcomNoF,BotAreaNoF,tabindex
link=Request.Querystring("link")
ln=Request.Querystring("ln")
tabindex=0
%>


<%
'***********TITLE BAR ON TEXT
Const HAzienda="<img src=""images/title_azienda.gif"">"

Const HProdotti="<img src=""images/title_prodotti.gif"">"
Const HOzono="<img src=""images/title_ozono.gif"">"
Const HContatti="<img src=""images/title_contatti.gif"">"

'************TESTI ON LEFT
Const TAzienda="testi/azienda.asp"

Const TProdotti="testi/prodotti.asp"
Const TOzono="testi/ozono.asp"
Const TContatti="testi/contatti.asp"

'************PHOTOS ON RIGHT
Const PAzienda= "<img src=""images/logo_ozono_BIG.jpg""><br><br><br><br><table border=""0"" align=""center""><tr><td colspan=""4"" align=""center""><span class=""testoblu12"">Visualizza Certificazioni</span></td></tr><tr><td width=""80"" align=""center""><div align=""right""><span class=""testoblu12""><a href=""public/csq.pdf"" target=""_blank"">CSQ</a></span></div></td><td width=""129"" align=""center""><span class=""testoblu12""><a href=""public/csqmed.pdf"" target=""_blank"">CSQMED</a></span></td><td width=""77"" align=""center""><div align=""left""><span class=""testoblu12""><a href=""public/iqnet.pdf"" target=""_blank"">IQNET</a></span></div></td></tr><tr><td colspan=""4"" align=""center""><span class=""littleblu""><i>Per la corretta visualizzazione è necessario<br>Adobe Acrobat Reader ®</i></span></td></tr></table>"
Const POzono="<br><br><br><img src=""images/creaozono.jpg"">"
Const PContatti="<img src=""images/cartina.gif"">"
Const PAziendaMac= "<div align=""center""><img src=""images/logo_ozono_BIG.jpg""><br><br><br><br></div><table width=""400"" border=""0"" align=""center""><tr><td colspan=""4"" align=""center""><span class=""testoblu12"">Visualizza Certificazioni</span></td></tr><tr><td width=""80"" align=""center""><div align=""right""><span class=""testoblu12""><a href=""public/csq.pdf"" target=""_blank"">CSQ</a></span></div></td><td width=""129"" align=""center""><span class=""testoblu12""><a href=""public/csqmed.pdf"" target=""_blank"">CSQMED</a></span></td><td width=""77"" align=""center""><div align=""left""><span class=""testoblu12""><a href=""public/iqnet.pdf"" target=""_blank"">IQNET</a></span></div></td></tr><tr><td colspan=""4"" align=""center""><span class=""littleblu""><i>Per la corretta visualizzazione è necessario<br>Adobe Acrobat Reader ®</i></span></td></tr></table>"
Const PProdotti="foto"

'************TITLE OF PAGE
Const TitleAzienda=".... Azienda ::.."
Const TitleOzono=".... Ozono ::.."
Const TitleProdotti=".... Prodotti ::.."
Const TitleContatti=".... Contatti ::.."

'******************BOTTOM
Const BottomAzienda="testi/bottomazienda.asp"
Const BottomProdotti="testi/bottomprodotti.asp"
Const BottomOzono="testi/bottomozono.asp"
Const BottomContatti="testi/bottomcontatti.asp"

'******************BUTTON LANGUAGE
Const IAzienda= "<object width=""110"" height=""20""><param name=""movie"" value=""images/azienda.swf""><param name=""quality"" value=""high""><embed src=""images/azienda.swf"" quality=""high"" type=""application/x-shockwave-flash"" width=""110"" height=""20""></embed></object>"
Const IOzono= "<object width=""110"" height=""20""><param name=""movie"" value=""images/ozono.swf""><param name=""quality"" value=""high""><embed src=""images/ozono.swf"" quality=""high"" type=""application/x-shockwave-flash"" width=""110"" height=""20""></embed></object>"
Const IProdotti= "<object width=""110"" height=""20""><param name=""movie"" value=""images/prodotti.swf""><param name=""quality"" value=""high""><embed src=""images/prodotti.swf"" quality=""high"" type=""application/x-shockwave-flash"" width=""110"" height=""20""></embed></object>"
Const IContatti= "<object width=""110"" height=""20""><param name=""movie"" value=""images/contatti.swf""><param name=""quality"" value=""high""><embed src=""images/contatti.swf"" quality=""high"" type=""application/x-shockwave-flash"" width=""110"" height=""20""></embed></object>"
Const IProduttori= "<object width=""900"" height=""50""><param name=""movie"" value=""images/generatori_ossigeno.swf""><param name=""quality"" value=""high""><embed src=""images/generatori_ossigeno.swf"" quality=""high"" type=""application/x-shockwave-flash"" width=""900"" height=""50""></embed></object>"
Const IEcom="<object width=""160"" height=""20""><param name=""movie"" value=""images/e-commerce.swf""><param name=""quality"" value=""high""><embed src=""images/e-commerce.swf"" quality=""high"" pluginspage=""http://www.macromedia.com/go/getflashplayer"" type=""application/x-shockwave-flash"" width=""160"" height=""20""></embed></object>"
Const IArea="<object width=""160"" height=""20""><param name=""movie"" value=""images/area_riservata.swf""><param name=""quality"" value=""high""><embed src=""images/area_riservata.swf"" quality=""high"" pluginspage=""http://www.macromedia.com/go/getflashplayer"" type=""application/x-shockwave-flash"" width=""160"" height=""20""></embed></object>"


'*********NUVOLE TOP
Const toplogo="<img src=""images/top_bar.jpg"">"
Const topnologo="<img src=""images/top_bar_no_logo.jpg"">"

'***********PULSANTI NO FLASH
Const IEComNoF="<a href=""pageNoFlash.asp?link=e-commerce"" onMouseOut=""MM_swapImgRestore()"" onMouseOver=""MM_swapImage('e-commerce','','images/no_flash/e_commerce_over.gif',1)""><img src=""images/no_flash/e_commerce_out.gif"" alt=""e-commerce"" name=""e-commerce"" width=""160"" height=""20"" border=""0""></a>"
Const IAziendaNoF="<a href=""pageNoFlash.asp?link=Azienda"" onMouseOut=""MM_swapImgRestore()"" onMouseOver=""MM_swapImage('Azienda','','images/no_flash/azienda_over.gif',1)""><img src=""images/no_flash/azienda_out.gif"" alt=""Azienda"" name=""Azienda"" width=""110"" height=""20"" border=""0""></a>"
Const IProdottiNoF="<a href=""pageNoFlash.asp?link=Prodotti"" onMouseOut=""MM_swapImgRestore()"" onMouseOver=""MM_swapImage('Prodotti','','images/no_flash/prodotti_over.gif',1)""><img src=""images/no_flash/prodotti_out.gif"" alt=""Prodotti"" name=""Prodotti"" width=""110"" height=""20"" border=""0""></a>"
Const IOzonoNoF="<a href=""pageNoFlash.asp?link=Ozono"" onMouseOut=""MM_swapImgRestore()"" onMouseOver=""MM_swapImage('Ozono','','images/no_flash/ozono_over.gif',1)""><img src=""images/no_flash/ozono_out.gif"" alt=""Ozono"" name=""Ozono"" width=""110"" height=""20"" border=""0""></a>"
Const IContattiNoF="<a href=""pageNoFlash.asp?link=Contatti"" onMouseOut=""MM_swapImgRestore()"" onMouseOver=""MM_swapImage('Contatti','','images/no_flash/contatti_over.gif',1)""><img src=""images/no_flash/contatti_out.gif"" alt=""Contatti"" name=""Contatti"" width=""110"" height=""20"" border=""0""></a>"
Const IAreaNoF="<a href=""pageNoFlash.asp?link=AreaRiservata"" onMouseOut=""MM_swapImgRestore()"" onMouseOver=""MM_swapImage('AreaRiservata','','images/no_flash/area_riservata_over.gif',1)""><img src=""images/no_flash/area_riservata_out.gif"" alt=""Area Riservata"" name=""AreaRiservata"" width=""160"" height=""20"" border=""0""></a>"
Const IProduttoriNoF="<img src=""images/no_flash/generatori.jpg"" alt=""OzonoItalia...Generatori di Ossigeno Triatomico"" name=""banner01"" border=""0"" width=""900"" height=""50"">"
%>
<%
sub azienda
head=HAzienda
left=TAzienda
right=PAzienda
rightMac=PAziendaMac
title=TitleAzienda
Bottom=BottomAzienda
Top=topnologo
BotAzienda=IAzienda
BotOzono=IOzono
BotProdotti=IProdotti
BotContatti=IContatti
Produttori=IProduttori
BotEcom=IEcom
BotArea=IArea
BotEComNoF=IEComNoF
BotAziendaNoF=IAziendaNoF
BotProdottiNoF=IProdottiNoF
BotOzonoNoF=IOzonoNoF
BotContattiNoF=IContattiNoF
BotAreaNoF=IAreaNoF

end sub

sub prodotti
head=HProdotti
left=TProdotti
right=PProdotti
rightMac=PProdotti
title=TitleProdotti
Bottom=BottomProdotti
Top=toplogo
BotAzienda=IAzienda
BotOzono=IOzono
BotProdotti=IProdotti
BotContatti=IContatti
Produttori=IProduttori
BotEcom=IEcom
BotArea=IArea
BotEComNoF=IEComNoF
BotAziendaNoF=IAziendaNoF
BotProdottiNoF=IProdottiNoF
BotOzonoNoF=IOzonoNoF
BotContattiNoF=IContattiNoF
BotAreaNoF=IAreaNoF
end sub
sub ozono
head=HOzono
left=TOzono
right=POzono
rightMac=POzono
title=TitleOzono
Bottom=BottomOzono
Top=toplogo
BotAzienda=IAzienda
BotOzono=IOzono
BotProdotti=IProdotti
BotContatti=IContatti
Produttori=IProduttori
BotEcom=IEcom
BotArea=IArea
BotEComNoF=IEComNoF
BotAziendaNoF=IAziendaNoF
BotProdottiNoF=IProdottiNoF
BotOzonoNoF=IOzonoNoF
BotContattiNoF=IContattiNoF
BotAreaNoF=IAreaNoF
end sub
sub contatti
head=HContatti
left=TContatti
right=PContatti
rightMac=PContatti
title=TitleContatti
Bottom=BottomContatti
Top=topnologo
BotAzienda=IAzienda
BotOzono=IOzono
BotProdotti=IProdotti
BotContatti=IContatti
Produttori=IProduttori
BotEcom=IEcom
BotArea=IArea
BotEComNoF=IEComNoF
BotAziendaNoF=IAziendaNoF
BotProdottiNoF=IProdottiNoF
BotOzonoNoF=IOzonoNoF
BotContattiNoF=IContattiNoF
BotAreaNoF=IAreaNoF
end sub

Select Case link
Case "Azienda"
call azienda

Case "Prodotti"
call prodotti
Case "Ozono"
call ozono
Case "Contatti"
call contatti
end select
%>

<%
Sub ita
tabindex=1
BotAzienda=IAzienda
BotOzono=IOzono
BotProdotti=IProdotti
BotContatti=IContatti
Produttori=IProduttori
BotEcom=IEcom
BotArea=IArea
BotEComNoF=IEComNoF
BotAziendaNoF=IAziendaNoF
BotProdottiNoF=IProdottiNoF
BotOzonoNoF=IOzonoNoF
BotContattiNoF=IContattiNoF
BotAreaNoF=IAreaNoF
ProduttoriNoF=IProduttoriNoF

end sub

Sub us

end sub

Select Case ln
Case "ita"
call ita
Case "us"
call us
end select

%>
<%
Dim id,NomeProd,DescProd,ProdProd,ConcProd,MisuProd,FlussoProd,CataProd,MateProd,AlimPRod,DimProd,FotoProd,IcoProd,TestoProd,Sezione
Sezione=Request.QueryString("Sezione")
id=Request.Querystring("id")
%>
<%
Const Medi="Medicale"
Const Consu="Consumer"
Const Indu="Industriale"
Const Acce="Accessori"
%>
<%
Sub Medicale
Sezione=Medi
right="testi/visualizza_prod.asp"

End Sub
Sub Consumer
Sezione=Consu
End Sub
Sub Industriale
Sezione=Indu
End Sub
Sub Accessori
Sezione=Acce
right="testi/visualizza_prod.asp"
End Sub
%>
<%
Select Case Sezione
Case "Medicale"
call Medicale
Case "Consumer"
call Consumer
Case "Industriale"
call Industriale
Case "Accessori"
call Accessori
End Select
%>
---------------fine config.asp-----------------------------------------

---------------------------inizio visualizza_prod.asp-------------------
<% Dim rs
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open "select * from Accessori order by ID", conn
Do while NOT rs.EOF%>
<table width="100%"><tr><td>123<%NomeProd=rs("Nome Prodotto")%><%Response.Write(NomeProd)%></td></tr></table>
<%
rs.MoveNext
Loop
%>
------------------------------fine visualizza_prod.asp--------------------------
3.122 messaggi dal 16 maggio 2002
Penso di aver capito l'errore. Dove definisci l'oggetto conn? Il fatto è che il metodo Execute dell'oggetto Server avvia una istanza della pagina eseguita indipendentemente dalla pagina chiamante, per cui non puoi utilizzare nella pagina chiamata variabili ed oggetti definiti nella pagina chiamante.
L'errore che ti viene generato è proprio nel fatto che la pagina chiamata non conosce la variabile conn, per cui la tratta come fosse una variant vuota. Da qui l'errore "gli argomenti (del metodo Open del rs) non sono validi".
Se sostituisci il Server.Execute con un include vedrai che funzionerà tutto.
Fammi sapere.

The day Microsoft makes something that doesn't suck
is probably the day they start making vacuum cleaners.

Get caught!
Get caught again!
L'oggetto conn lo definisco in un file che si chiama connessione.asp e che includo nella pagina page.asp e il codice e' il seguente

<%
Dim Conn
Set Conn=Server.CreateObject("ADODB.Connection")
Conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq="& server.MapPath("database/prodotti.mdb")
%>

Se ho capito bene tu mi consigli di eseguire un <!--#include file="right" --> ma non penso funzioni perche' non posso eseguire l'istruzione include assegnando una variabile, l'ho imparato a mie spese.

Quindi ricapitolando io chiamo una pagina page.asp che ha incluso config.asp, connessione.asp, header.asp, body.asp e footer.asp con le variabili link=prodotto e sezione=Accessori.
A questo punto la variabile right dovrebbe dare come risultato una query nel db access che mi visualizza la tabella accessori.

Spero di essere stato piu' chiaro perche' io non ho capito il tuo suggerimento.
Grazie e ciao
3.122 messaggi dal 16 maggio 2002
No, non intendo un include file="right". Allora, le alternative sono due:

o includi connessione.asp anche nella pagina il cui indirizzo è memorizzato in right e poiu esegui il server.execute

oppure usi un <!--#include file="indirizzomemorizzatoinright"--> al posto di server.execute. Naturalmente puoi usare questo secondo metodo se e solo se l'indirizzo che memorizzi in right è costante, dato che non è possibile fare <!--#include file="<%=right%>"-->

The day Microsoft makes something that doesn't suck
is probably the day they start making vacuum cleaners.

Get caught!
Get caught again!

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.