Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2005
    Messaggi
    168

    Non riesco a passare un parametro con Request.Form

    Ciao a tutti!
    Ho 2 pagine ASP, insert.asp e insert2.asp.

    La prima contiene un semplice form di inserimento dati su DB con method=post e vari campi di input, tra cui un semplicissimo input type=text con name "cod" (campo su DB di tipo "testo")

    La seconda pagina dovrebbe mostrarmi il record appena inserito estraendolo dal DB grazie al "cod" appena memorizzato che cerco di passare tramite Request.Form.
    L'estrazione dal DB avviene per mezzo di una stringa di connessione e relativo recordset.
    Il problema è che, una volta premuto il tasto di inserimento (su insert.asp), ottengo il seguente errore:

    ADODB.Field error '80020009'

    Il record corrente corrisponde all'inizio o alla fine del file oppure è stato eliminato. Per eseguire l'operazione richiesta è necessario disporre di un record corrente.

    /insert2.asp, line 0

    La sensazione che ho io (da inesperta) è che, tra una pagina e l'altra, si perda il parametro... infatti, se, per assurdo, nel recordset scrivo il "cod" statico (del record appena inserito), la pagina mi viene correttamente visualizzata...

    So che è problematico riportare per esteso su questo forum i codici delle pagine ASP, mi limiterò pertanto a riportare il solo codice di connessione al DB e il relativo recordset, così da permettervi di valutare meglio il tipo di errore:

    insert2.asp

    codice:
     
     
    
    <%Set Conn = Server.CreateObject("ADODB.Connection") 
    strConn="driver={Microsoft Access Driver (*.mdb)};" 
    strConn=strConn & "DBQ=" &Server.MapPath("/mdb-database") & "\miodb.mdb" 
    Conn.Open strConn 
    
    varcod = Request.Form("cod") 
    
    sql = "SELECT * FROM prodotti WHERE cod = '" & varcod & "'" 
    Set rs = Server.CreateObject("ADODB.Recordset") 
    rs.Open sql, conn, 1, 2 
    %>
    Grazie mille a quanti potranno aiutarmi!

    t.

  2. #2
    probabilmente la variabile non arriva alla seconda pagina o arriva vuota

    controlla nella tua prima pagina che venga valorizzata, se viene valorizzata allora l'errore è nel passaggio alla pagina successiva
    prude il dito, lui sdraiato
    ha giocato a guardie e ladri col ladro sbagliato

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2005
    Messaggi
    168
    Come faccio a "valorizzare" la variabile nella prima pagina?
    Purtroppo devi avere un po' di pazienza con me, sono alle primissime armi e molti concetti mi sono ancora un po' oscuri... :master:
    Ciao e grazie!

  4. #4
    come memorizzi il valore del codice appena inserito ?
    prude il dito, lui sdraiato
    ha giocato a guardie e ladri col ladro sbagliato

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2005
    Messaggi
    168
    non è che lo memorizzo, o meglio, lo memorizzo sul DB ma a me serve che il valore venga passato da una pagina all'altra tramite form (POST) su prima pagina e Request.Form su pagina successiva...
    forse ti riferisci a una variabile di sessione? Se si, non l'ho utilizzata affatto... nel caso, mi scriveresti gentilmente il codice per memorizzare il dato su una variabile e recuperare quest'ultima nella seconda pagina? Non sono molto ferrata in argomento variabili... grazie!

  6. #6
    un esempio di come memorizzare un valore in una variabile ed inviarlo ad una seconda pagina

    PRIMA PAGINA

    codice:
    <%
    cod = 10
    %>
    
    <table ............. >
    	<form name="test" action="seconda_pagina.asp" method="post"
    		<input type="text" name="codice" value="<%=cod%>">
    		
    		....
    		
    		<input type="submit" name="invia" value="invia">
    	</form>
    </table>
    SECONDA PAGINA

    codice:
    <%
    varcod = request.form("codice")
    
    sql = "SELECT * FROM prodotti WHERE cod = '" & varcod & "'" 
    
    .....
    
    %>
    prude il dito, lui sdraiato
    ha giocato a guardie e ladri col ladro sbagliato

  7. #7
    Utente di HTML.it
    Registrato dal
    Nov 2005
    Messaggi
    168
    ho provato ad applicare l'esempio, ma:
    1) in tal modo, nel campo di input text "codice" mi compare il valore "= 10", mentre invece dovrei essere io a digitare un codice
    2) ottengo sempre lo stesso errore sulla seconda pagina

  8. #8
    ti consiglio di dare un'occhiata alla guida all'asp di html:
    http://freeasp.html.it/

    prude il dito, lui sdraiato
    ha giocato a guardie e ladri col ladro sbagliato

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 © 2026 vBulletin Solutions, Inc. All rights reserved.