Visualizzazione dei risultati da 1 a 4 su 4

Discussione: Recupero dati form

  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    100

    Recupero dati form

    Sto cercando di recuperare i dati da un form con nome: inserisci_dati.htm e ho creato questa pagina in asp: registra_nome.asp.

    Mi dà il seguente errore:

    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.
    /registra_nome.asp, line 69 (colorata di rosso)

    Cosa significa
    Grazie.

    <%@ language = JScript%>

    <%
    // verifico che l'utente che si vuole registrare passi per forza dalla pagina del form
    nascosto = Request.Form("nascosto")
    if(nascosto != "autorizzato") {
    Response.Write("Non hai il permesso di visualizzare questa pagina

    ");
    Response.Write("torna indietro")
    Response.End;
    }
    // estraggo dal form i dati
    fragionesociale = Request.Form("ragionesociale");
    fdatains = Request.Form("ggdatains") + "/" + Request.Form("mmdatains") + "/20" + Request.Form("aadatains");
    fcat1 = Request.Form("cat1");
    fcat2 = Request.Form("cat2");
    fcat3 = Request.Form("cat3");
    fcat4 = Request.Form("cat4");
    ftelefono = Request.Form("telefono");
    femail = Request.Form("email1") + "@" + Request.Form("email2") + "." + Request.Form("email3");
    fsito = Request.Form("sito");
    ffax = Request.Form("fax");
    data = new Date();
    datareg = data.getDate() + "/" + (data.getMonth()+1) + "/" + data.getFullYear();
    // verifico se l'utente è già registrato con quel ragionesociale, cat1, cat2, cat3
    // il tutto case-insensitive
    sql = "SELECT * FROM tbl_estero WHERE ragionesociale LIKE '" + fragionesociale + "%'"
    sql = sql + "AND cat1 LIKE '" + fcat1 + "%'"
    sql = sql + "AND cat2 LIKE '" + fcat2 + "%'"
    sql = sql + "AND cat3 LIKE '" + fcat3 + "%'"
    // apre la connessione al database ed esegue la query
    conn.Open(sdc)
    var query = conn.Execute(sql)
    if(!query.EOF){
    Response.Write("Attenzione, l'utente:
    ")
    Response.Write("ragionesociale: " + fragionesociale + "
    ")
    Response.Write("cat1: " + fcat1 + "
    ")
    Response.Write("cat2: " + fcat2 + "
    ")
    Response.Write("cat3: " + fcat3 + "
    ")
    Response.Write("è già registrato.

    ");
    Response.Write("torna indietro")
    // chiude la connessione al database
    conn.Close();
    Response.End;
    }
    // Se tutto è OK procede con la registrazione dei dati dell'utente nel database
    // crea l'oggetto recordset
    rs = Server.CreateObject("ADODB.Recordset");
    // apre l'oggetto recordset
    rs.Open("tbl_estero",conn,3,3);
    // aggiunge il nuovo record
    rs.AddNew();
    rs("ragionesociale") = fragionesociale;
    rs("datains") = fdatains;
    rs("cat1") = fcat1;
    rs("cat2") = fcat2;
    rs("cat3") = fcat3;
    rs("cat4") = fcat4;
    rs("telefono") = ftelefono;
    rs("email") = femail;
    rs("sito") = fsito;
    rs("fax") = ffax;
    // carica nel database il recordset
    rs.Update();
    // chiude l'oggetto recordset
    rs.Close();
    // estrae l'idutente dal database
    sql = "SELECT id FROM tbl_estero WHERE ragionesociale LIKE '" + fragionesociale + "' AND cat1 LIKE'" + fcat1 + "' AND cat2 LIKE'" + fcat2 + "' AND cat3 LIKE'" + fcat3 + "'"
    rs.Open(sql,conn,3,3);
    id = rs("id").value // chiude l'oggetto recordset
    rs.Close();
    // chiude la connessione al database
    conn.Close();
    %>
    <html>
    <head>
    <title>Registrazione di <%= fcognome%></title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <link rel="stylesheet" href="stili.css" type="text/css">

    </head>

    <body bgcolor="#FFFFFF" text="#000000">
    <h3>Registrazione avvenuta con successo!</h3>
    <h4></h4>
    </body>
    </html>
    frappy66

  2. #2
    vuol dire che il recordset ti torna vuoto ...

    infatti se provi a controllarlo con rs.eof vedrai che ti darà true ...

    per recupearre l'id potresti
    codice:
    rs.Open("tbl_estero",conn,1 ,3); 
    // aggiunge il nuovo record 
    rs.AddNew(); 
      rs("ragionesociale") = fragionesociale; 
      rs("datains") = fdatains; 
      rs("cat1") = fcat1; 
      rs("cat2") = fcat2; 
      rs("cat3") = fcat3; 
      rs("cat4") = fcat4; 
      rs("telefono") = ftelefono; 
      rs("email") = femail; 
      rs("sito") = fsito; 
      rs("fax") = ffax; 
    // carica nel database il recordset 
    rs.Update(); 
    
    id = rs("id")

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    100
    Grazie!!
    Funziona
    frappy66

  4. #4

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.