Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 17

Discussione: problema con SSI

  1. #1

    problema con SSI

    Ciao a tutti, sono alle prime armi con asp ed avrei bisogno di un aiutino.
    Sto cercando di creare una piccola applicazione che permette di eseguire operazioni su db.
    Io vorrei utilizzare la stessa pagina x fare tutto come mi è capitato di vedere in parecchi siti...insomma passando un valore diverso della variabil argomento ed includendo il relativo file.
    Es:
    matite
    di conseguenza vorrei includere il file prodotti.asp che preleva i dati dal db cosi:

    <%
    if request.querystring("argomento") = "prodotti" then
    %>


    <%end if%>

    Fino a qui si puo dire che funziona...il problema ce l'ho quando inserisco gli altri if x gli altri argomenti...ad esempio:

    <%
    if request.querystring("argomento") = "login" then
    %>


    <%end if%>

    ...in questo caso, mi include il file login.asp, ma mi stampa a video la risposta di una query fatta nel file prodotti.asp e cioè "nessun prodotto presente x questa categoria".In pratica mi da l'idea che include cmq tutti i file senza considerare gli if.
    Posto il codice nel caso qualcuno voglia aiutarmi:

    <%
    Dim argomento
    argomento = request.querystring("argomento")
    if argomento = "Prodotti" then
    %>

    <%
    end if
    if argomento = "login" then
    %>


    <%
    end if
    if argomento = "" then
    %>

    <%
    end if
    %>

    Grazie tante,
    Claudio

  2. #2
    al posto di includere i file in maniera classica, uso un server.execute

    <%
    if Request.QueryString("esempio") = "query1" then
    Server.Execute("file.inc")
    elseif Request.QueryString("esempio") = "query2" then
    Server.Execute("file2.inc")
    end if
    %>

    Però in ogni file che fai includere devi inserire tutto, connessione, rs e tutto ciò che serve per farlo eseguire.

  3. #3
    ciao e grazie x la tua rsposta.
    Ho provato ma mi da questo errore ke prima non mi dava:

    Microsoft VBScript compilation error '800a0400'

    Expected statement

    /cms/prodotti.asp, line 25

    end if
    ^

    Com'è possibile?

  4. #4
    mi posti tutto il codice?

  5. #5
    <%
    if Request.QueryString("argomento") = "Prodotti" then
    Server.Execute("prodotti.asp")
    elseif Request.QueryString("argomento") = "Login" then
    Server.Execute("login.asp")
    end if
    %>

    questo è prodotti.asp

    <%
    response.expires = 0
    %>

    <div class=percorso_navigazione><%=Request.Querystring( "argomento")%> - <%=Request.Querystring("nome_categoria")%></div>
    <%
    nome_categoria = request.querystring("nome_categoria")
    RecordsPerPagina = 12
    page = Request.querystring("page")
    if page="" then page=1
    end if
    'Imposto la Query ed apro il Recordset
    Dim Query, Rs
    Query = "Select * from prodotti where categoria_prodotto ='" & nome_categoria & "' AND visualizza = 'si' order by nome_prodotto"
    Set Rs = Server.CreateObject("ADODB.Recordset")
    Rs.Open Query, Conn, 3, 3
    if Rs.EOF then
    Response.Write "


    Nessun prodotto appartenente alla categoria "& nome_categoria
    Else
    'apri recordset
    ' paginazione
    Rs.PageSize = RecordsPerPagina
    Rs.AbsolutePage = page
    %>
    <div class=divisore_giu align=center>
    Pagina: <%=page%> di <%=Rs.PageCount%>
    </div>


    <table width='100%' cellspacing="0" cellpadding="0" border="0" class=tablecat1>
    <tr>
    <%
    'divido in 3 colonne il risultato della query
    Dim x
    x = 0

    For i=1 to RecordsPerPagina
    if Not Rs.EOF then
    'mostra record
    %>
    <td align=center valign=top>
    <%=Rs("nome_prodotto")%>
    <%
    x = x + 1
    if x = 3 then

    response.write"<tr>"
    x = 0
    end if
    rs.MoveNext
    end if
    Next
    %>

    </table>


    <!--
    ************************************************** *************************************
    ***************************MENU DI NAVIGAZIONE DEL CATALOGO PER PIU PAGINE*************
    ************************************************** *************************************
    -->


    <div class=divisore_su align=center>
    <%
    If page <> 1 then
    Response.Write"[img]images/freccia_left.gif[/img] <a href='?argomento=Prodotti&page=" & (page - 1) & "&nome_categoria=" & Server.UrlEncode(nome_categoria) & "'>Precedente"
    Response.Write"</a> | "
    end if

    Response.Write "Pagine "
    For pag=1 to Rs.PageCount
    Response.Write "<A href='?argomento=Prodotti&page=" & pag
    Response.Write "&nome_categoria=" & Server.UrlEncode(nome_categoria)
    Response.write "'>"
    Response.Write pag
    Response.Write "</A> "
    Next


    if Rs.Eof=false then

    Response.Write"| Successiva [img]images/freccia_right.gif[/img]"

    End if


    %>
    </div>

    <%

    'Chiudiamo il recordset
    Rs.Close
    set Rs = Nothing

    'Chiudiamo la connessione
    Conn.Close
    set Conn = Nothing
    %>

    A regola prodotti.asp non ha errori xkè finkè facevo le Server Side Inclsion andata tutto perfettamente.
    Ciao e grazie

  6. #6
    ma quando apri le pagine gliele metti anche le stringhe per le query nell'url?

  7. #7
    Io ho un menù esterno incluso nella pagina il quale pesca delle categorie da una tabella del db.Questo è un esempio del risultato del ciclo while del menù:

    Matite

    Evidenziatori

    ecc ecc...

    sempre nella stessa pagina(ti ricordo ke ne uso una x tutte), includo i vari file secondo il valore della variabile argomento quindi metto le varie condizioni:

    if argomento = "Prodotti" then
    includo il file prodotti.asp
    e cosi via...

    nel file prodotti.asp ho questa query che pesca i prodotti in base alla variabile nome_categoria e secondo il valore del campo visualizza del db che mi serve per decidere se visualizzare o meno il prodotto nella pagina:

    Select * from prodotti where categoria_prodotto ='" & nome_categoria & "' AND visualizza = 'si' order by nome_prodotto

    Nel modo ke mi hai consigliato tu (Server.Execute) mi da quell'errore (un mancato end if mi pare) che nel modo in cui avevo operato io non mi dava...com'è possibile? In pratica come avevo fatto io sembrava funzionasse tutto...c'è solo quella cosa lì del file prodotti.asp che mi stampa a video anche quando includo un altro file...se clicchi qui puoi vedere che nonostante io gli dico di non includere nessun file se la variabile argomento è vuota, lui mi da la risposta della query del file prodotti.asp e se clicchi sulle voci del menù invece include il file prodotti.asp e funziona tutto. Il codice ho rimesso quello ke avevo fatto io visto l'errore ke mi dava.
    Scusa se ti faccio perdere tempo e grazie infinite x l'aiuto che mi stai dando.
    A presto e grazie ancora,
    Claudio

  8. #8
    Utente di HTML.it L'avatar di supermac
    Registrato dal
    Jun 2001
    Messaggi
    1,881
    sbaglio o in prodotti.asp dove apri
    "if Rs.EOF then "
    l'else non ha l'end if in chiusura?
    W la Ferari effetrenavenave!
    il computer è un somaro veloce! (neanche tanto ndr)

  9. #9
    Si chiude dopo

    rs.MoveNext

    no?

  10. #10
    Utente di HTML.it L'avatar di supermac
    Registrato dal
    Jun 2001
    Messaggi
    1,881
    no quello chiude l'if di
    if Not Rs.EOF then
    'mostra record

    che c'è dentro il for
    io intendo l'if precedente

    if Rs.EOF then
    Response.Write "


    Nessun prodotto appartenente alla categoria "& nome_categoria
    Else
    ...
    manca l'end if?
    W la Ferari effetrenavenave!
    il computer è un somaro veloce! (neanche tanto ndr)

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.