Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    138

    Aggiornamento campi in database

    Seguendo gli esempi di un libro, ho modificato l'esempio riportato e ho creato una pagina per la modifica dei campi di una tabella e un modulo che esegue la modifica vera e propria. Ovviamente il modulo (in puro ASP, senza HTML, affinchè non venga isualizzato dall'utente)è collegato al form della pagina tramite il tag action del form.
    Inutile dire che non avviene alcun aggiornamento e vengo indirizzato alla pagina bianca con il seguente errore:
    ---------------------------------------------------------------------------------------
    "Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

    [Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression 'IdAccesso='.

    /SezioneAdmin/Accessi/ModuloModificaAccesso.asp, line 5"
    ---------------------------------------------------------------------------------------

    Vi posto un po' di codice che ritengo possa contenere una possibile causa di errore che io non vedo:

    Codice della pagina di modifica prima dell'inizio del codice HTML (<!DOCTYPE html...ecc..):
    ---------------------------------------------------------------------------------------
    <%
    Dim dbConn
    Dim rstModificaAccesso
    Set dbConn = Server.CreateObject ("adodb.connection")
    dbConn.open("Driver={Microsoft Access Driver (*.mdb)};Dbq=" & Server.Mappath("/mdb-database/Tabelle.mdb"))
    Set rstModificaAccesso = dbConn.Execute("SELECT Id, Password FROM tblLogIn WHERE IdAccesso=" & Request.QueryString("IdAccesso"))
    %>
    ---------------------------------------------------------------------------------------

    Codice della pagina di modifica relativo al form....
    ---------------------------------------------------------------------------------------
    <form action="ModuloModificaAccesso.asp?<%=Request.Query String("IdAccesso")%>" method="post" name="frmUpdateAccessi" id="frmUpdateAccessi">
    ---------------------------------------------------------------------------------------

    ...e quello relativo al modulo (ModuloModificaAccesso.asp per la cronaca) per la modifica...(la riga 5 a cui si riferisce il messaggio di errore è quella che inizia con dbConn.execute...)
    ---------------------------------------------------------------------------------------
    <%
    Dim dbConn
    Set dbConn = Server.CreateObject ("adodb.connection")
    dbConn.open("Driver={Microsoft Access Driver (*.mdb)};Dbq=" & Server.Mappath("/mdb-database/Tabelle.mdb"))
    dbConn.execute("UPDATE tblLogIn SET Id='"& Request.Form("txtId") &"', Password='"& Request.Form("txtPassword") &"' WHERE IdAccesso=" & Request.QueryString("IdAccesso") &"")

    Response.Redirect("ModCancAccesso.asp")
    %>
    ---------------------------------------------------------------------------------------

    La domanda quindi è: dove sta l'errore? E' forse una ridondanza di codice ASP tra la pagina di modifica e il modulo di modifica? Forse la chiave primaria ("IdAccesso") non viene passata correttamente?

    Grazie anticipatamente per ogni aiuto.

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Dipende cosa hai nella tabella, comunque o la query diventa cosi:
    dbConn.Execute("SELECT IdAccesso, Password FROM tblLogIn WHERE IdAccesso=" & Request.QueryString("IdAccesso"))
    nel caso che il campo IdAccesso sia settato a testo:
    dbConn.Execute("SELECT IdAccesso, Password FROM tblLogIn WHERE IdAccesso='" & Request.QueryString("IdAccesso")&"'")
    oppure:
    dbConn.Execute("SELECT Id, Password FROM tblLogIn WHERE Id=" & Request.QueryString("Id"))
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    138
    Problema risolto...nella pagina di modifica mancava, nel tag action del form, il nome della chiave primaria: avevo scritto il valore, ma non il nome seguito dal segno uguale...che pirla che sono.

    Grazie comunque per la risposta.

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.