Questo codice mi dà:codice:<% 'controllo i campi If Request.Form("NomeCognome")="" OR Request.Form("Email")="" OR Request.Form("Descrizione")="" OR Request.Form("Provincia")="" OR Request.Form("Citta")="" Then 'se ce ne sno di vuoti do l'errore Response.Redirect("errore.asp") Else 'altimenti, se tutto è ok, inizio col mandare una email (che arriva a me) Dim MyMail Set MyMail=CreateObject("CDONTS.NewMail") Descrizione=Request.Form("Descrizione") MyMail.From=Request.Form("Email") MyMail.To="info@sito.it" MyMail.Subject="Richiesta di preventivo" MyMail.Body="Da: " & Request.Form("NomeCognome") & " Città: " & Request.Form("Citta") & " Provincia: " & Request.Form("Provincia") & " Telefono: " & Request.Form("Telefono") & " " & Descrizione MyMail.BodyFormat=0 MyMail.MailFormat=0 MyMail.Importance=1 MyMail.Send 'qui mi estraggo una cifra casuale da 1000 a 9999 Dim intUp, intLow, intRandom, intRange Randomize() intUP = 1000 intLow = 9999 intRange = intUp - intLow + 1 intRandom = CInt ( ( intRange * Rnd() ) + intLow) cifra=intRandom 'apro il database Dim cn Set cn=Server.CreateObject("ADODB.Connection") cn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("database.mdb") Dim rs, strConn, strSql set rs = Server.CreateObject("ADODB.recordset") sql="SELECT * FROM codici WHERE Email" rs.Open "SELECT * FROM codici WHERE Email like '"&Request.Form("Email")&"'", cn,3,3 'con la query precedento vedo se l'email c'è già If rs.EOF Then 'non c'è e proseguo con la registrazione de dati rs.Fields("CodiceRichiesta")=cifra rs.Fields("Email")=Request.Form("Email") rs.Close cn.Close 'mando una seconda email (che arriva all'utente) Set MyMail=CreateObject("CDONTS.NewMail") MyMail.From="info@sito.it" MyMail.To=Request.Form("Email") MyMail.Subject="Richiesta di preventivo" MyMail.Body="Ciao "&Request.Form("NomeCognome")&", la tua richiesta di preventivo è stata inviata, al più presto riceverai una risposta. Il tuo codice per partecipare al concorso è "&cifra&"" MyMail.BodyFormat=0 MyMail.MailFormat=0 MyMail.Importance=1 MyMail.Send Else 'se l'email già c'è mando un altro tipo di email (senza codice) Set MyMail=CreateObject("CDONTS.NewMail") MyMail.From="info@sito.it" MyMail.To=Request.Form("Email") MyMail.Subject="Richiesta di preventivo" MyMail.Body="Ciao "&Request.Form("NomeCognome")&", la tua richiesta di preventivo è stata inviata, al più presto riceverai una risposta." MyMail.BodyFormat=0 MyMail.MailFormat=0 MyMail.Importance=1 MyMail.Send Response.Redirect("conferma.asp") Set MyMail=Nothing 'chiudo i 2 if aperti End If End If %>
ADODB.Recordset error '800a0bcd'
Either BOF or EOF is True, or the current record has been deleted. Requested operation requires a current record.
pagina.asp, line 34
La linea imputata è rs.Fields("CodiceRichiesta")=cifra
Perché?

Rispondi quotando