Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Drivers error '80040e10'

    Ciao a tutti!
    Sto creando un sistema di messaggistica privata (un pò come quella in questo forum) e vorrei fare in modo che quando invio un messaggio il destinatario riceva la mail.

    L'errore che mi da è il seguente:

    Microsoft OLE DB Provider for ODBC Drivers error '80040e10'

    [Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1.

    /upload_messaggio.asp, line 34

    Vi posto la pagina:

    <%
    IF Session("Loggato") = False and Session("Username") = "" then
    Response.Redirect "login.asp"
    End IF
    Set Conn=Server.CreateObject("ADODB.Connection")
    strConn="driver={Microsoft Access Driver (*.mdb)}; "
    strConn=strConn & " DBQ=" & Server.MapPath("md/utenti.mdb")
    Conn.Open strConn
    sql = "SELECT * FROM messaggi"
    Set rs = Server.CreateObject("ADODB.Recordset")
    rs.Open sql, conn ,3,3
    rs.AddNew
    rs.Fields("data") = Request.Form("data")
    rs.Fields("autore") = Session("Username")
    rs.Fields("destinatario") = Request.Form("destinatario")
    rs.Fields("messaggio") = Request.Form("messaggio")
    rs.update

    dim abba
    abba=Request.Form("destinatario")

    rs.Close
    set rs = Nothing
    conn.Close
    set conn = Nothing

    Set Conn=Server.CreateObject("ADODB.Connection")
    strConn="driver={Microsoft Access Driver (*.mdb)}; "
    strConn=strConn & " DBQ=" & Server.MapPath("md/utenti.mdb")
    Conn.Open strConn
    sql = "SELECT * FROM utenti where username = "&abba
    Set rs = Server.CreateObject("ADODB.Recordset")
    rs.Open sql, conn ,3,3

    Set email = nothing
    Dim objMail, objConfig, messaggio

    messaggio = "hai un messaggio"

    Set objMail = Server.createObject("CDO.Message")
    Set objConfig = Server.createObject("CDO.Configuration")
    With objConfig
    .Fields("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "localhost"
    .Fields("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
    .Fields("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
    .Fields("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60

    .Fields.update
    End With
    Set objMail.Configuration = objConfig
    objMail.From = "info@manimpastate.com"
    objMail.To = email
    objMail.Subject = "Registrazione avvenuta - Manimpastate.com"
    objMail.Fields("urn:schemas:httpmail:importance"). Value = 2
    objMail.Fields.update()
    objMail.TextBody = messaggio
    objMail.Send()
    Set objMail = Nothing

    %>
    Tutto succede, nulla capita.

  2. #2
    Utente di HTML.it L'avatar di dwb
    Registrato dal
    Mar 2001
    residenza
    My IDE! :)
    Messaggi
    2,908
    Questo è il più classico degli errori che si verificano quando, tramite SQL, si richiama una tabella o un nome di campo che non esiste nel db. Dai un'occhiata attenta, basta una sciocchezza per far andare in crash lo script.
    ~Il nome di una variabile deve riflettere il suo scopo e non il suo tipo di dati, NET Framework.

  3. #3
    grazie dwb, gentilissimo!
    ora vedo un pò
    ti faccio sapere
    ciao
    Tutto succede, nulla capita.

  4. #4
    mi hai fatto venire il dubbio solo che ho controllato di nuovo tutto e non funziona lo stesso.

    In pratica quello che lui cerca nella seconda query non è altro che una variabile che contiene un nome.
    Il nome esiste in tutte e due le tabelle.

    Quindi non capisco!
    Guarda un pò:
    qui
    Set Conn=Server.CreateObject("ADODB.Connection")
    strConn="driver={Microsoft Access Driver (*.mdb)}; "
    strConn=strConn & " DBQ=" & Server.MapPath("md/utenti.mdb")
    Conn.Open strConn
    sql = "SELECT * FROM messaggi"
    Set rs = Server.CreateObject("ADODB.Recordset")
    rs.Open sql, conn ,3,3
    rs.AddNew
    rs.Fields("data") = Request.Form("data")
    rs.Fields("autore") = Session("Username")
    rs.Fields("destinatario") = Request.Form("destinatario")
    rs.Fields("messaggio") = Request.Form("messaggio")
    rs.update


    lui fa l'update nella tabella messaggi.
    poi conservo il campo Request.Form("destinatario") nella variabile abba.
    Successivamente interrogo di nuovo il DB e dico di prendere i records dove compare ABBA ed è qui che scatta l'errore!

    Set Conn=Server.CreateObject("ADODB.Connection")
    strConn="driver={Microsoft Access Driver (*.mdb)}; "
    strConn=strConn & " DBQ=" & Server.MapPath("mdb-database/utenti.mdb")
    Conn.Open strConn
    sql = "SELECT * FROM utenti where username = "&abba
    Set rs = Server.CreateObject("ADODB.Recordset")
    rs.Open sql, conn ,3,3


    non capisco! Tra l'altro provo a stampare a video il campo abba e non è vuoto, contiene il valore giusto! :master:
    Tutto succede, nulla capita.

  5. #5
    ragazzi chi è che mi può dare una mano? non mi funziona proprio e non riesco as torvare l'errore..
    Tutto succede, nulla capita.

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.