in
La comunità italiana dedicata a Sviluppatori e Architetti IT delle piattaforme Windows

chiedo venia - passare due variabili

Ultimo messaggio ricevuto il 21-12-2005 12.02 da theFool. 1 risposta(e).
Pagina 1 di 1 (2 elemento/i)
Ordina messaggi: Precedente Successivo
  • 20-12-2005 18.56

    • danielix
    • Utente Top 150
    • Registrato il 05-12-2005
    • Messaggi 7

    chiedo venia - passare due variabili

    [:o)]
    ok mi scuso per il post precedente. ora riformulo la domanda anche perchè la notte mi ha portato consiglio.

    sapete dirmi come passare due variabili di tipo data ad una seconda pagina?

    io uso un form

    <form action="passo2.asp" method="post" name="anagrafica_dal">

        <strong><font color="#333333" size="2" face="Verdana, Arial, Helvetica, sans-serif">Visualizza contratti DAL:
          <input name="dal_var" size="15">
          <br>
          <br>

        Inserisci data AL:
        <input name="al_var" size="15">
        </font></strong><br>
        <br>
       
       
        <INPUT type="submit" value="INVIA">
    </form>


    E IL FILE DI RISPOSTA È_----------------------------------------

    <%
    dim dal_var2, al_var2

        dal_var2 = Request.Form("dal_var")
        al_var2 = Request.Form("al_var")
       
       

    Dim Conn
    Set Conn = Server.CreateObject("ADODB.Connection")
    conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & server.mappath("baia.mdb")

    Dim rs
    Set rs = Server.CreateObject("ADODB.Recordset")

    dim sql_select
    sql_select = "select * from bilo2 where dal >= '" & dal_var2 & "' and al <= '" & al_var2 & "'"
       
    Dim data, intera

    --->LINEA 21<----    rs.Open sql_select, Conn
       
       
    %>
    <html>
    <head>
    <title>Documento senza titolo</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>

    <body>

            <%
                Do while NOT RS.EOF
                    data = rs("data")
                    intera =rs("intera")
                    id = rs("Id")
            %>
           
                <br>
                data : <%=data%><br>
                intera : <%=intera%><br>
                Id : <a href="as.asp?id=<%=Id%>"><%=Id%></a><br>
                <hr>
            <%
                RS.MoveNext
                Loop
            %>
    </body>
    </html>

    <%
        RS.Close
        Set RS = Nothing
        conn.Close
        Set conn=Nothing
    %>


    MI DÀ QUEST'ERRORE_--------------------------------

    Microsoft OLE DB Provider for ODBC Drivers (0x80040E10)
    [Microsoft][Driver ODBC Microsoft Access] Parametri insufficienti. Previsto 2. LINEA 21

    QUALCOSA A CHE VEDERE CON LA DATA. nel db questa è un campo data.

    grazie, daniele
    • Log
  • 21-12-2005 12.02 In risposta a

    • theFool
    • Utente Top 10
    • Registrato il 13-07-2005
    • Piacenza
    • Messaggi 127

    Re: chiedo venia - passare due variabili

    Ciao,
    il problema deriva dal fatto che ADO non riesce a trovare corrispondenza con i nomi degli oggetti durante l'esecuzione della query di selezione; verifica perciò che la tabella bilo2 esista e che contenga i campi i campi dal e al.

    Ti ricordo infine che in sql i valori di tipo data devono essere espressi con il seguente formato: #mm/gg/aaaa#

    Ecco un piccola funzione di conversione:

    Function getSQLData( dData )
     Dim g,m,a
     
     g = Day(dData)
     m = Month(dData)
     a = Year(dData)

     getSQLData = "#" & CStr(m) & "/" & CStr(g) & "/" & CStr(a) & "#"
    End Function

     

    In alternativa potresti usare un oggetto ADODB.Command, ovvero:

    Dim cmd
    Set cmd = Server.CreateObject("ADODB.Command")
    With cmd
       .CommandText = "select * from bilo2 where dal >= ? and al <= ?"
       Set .ActiveConnection = Conn
       .Parameters.Refresh
       .Parameters(0).value = dal_var2
       .Parameters(1).value = al_var2
       Set rs = .Execute
    End With

    In questo caso non è necessaria nessuna conversione esplicita. Yes [Y]

    • Log
Pagina 1 di 1 (2 elemento/i)
Prelevato da http://www.devspy.com/forums/p/4030/4274.aspx
DevSpy.com 6.0 © 2001-2008 - Alcuni Diritti Riservati
Salvo diversa indicazione, tutti i contenuti sono pubblicati sotto licenza "Creative Commons Attribution-Share Alike 3.0"