Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    22

    Immissione dati mediante form

    Devo creare un form che mi consenta di inserire dati in un database access, ho trovato questi ma non mi e` chiaro come combinare le varie cose:

    1.Aggiungere record ad un database
    2.Dal form al database
    3.Memorizzazione veloce

    Come devo fare?????????

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Nessuno dei tre può andar bene.
    Sai fare un form con i dati?
    Sai collegarti ad un database?
    Se sai fare queste cose manca solo la query di accodamento: INSERT INTO

    Che sai fare?

    roby

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    22
    allora io ho nel sito gia` un database il lettura

    il codice asp e` qiesto

    codice:
    <%
    ON ERROR RESUME NEXT
    
    dim DVR, DBQ, CS
    DVR = "DRIVER={Microsoft Access Driver (*.mdb)}; "
    DBQ = "DBQ=" & Server.MapPath("db_servizi/servizi.mdb") & ";"
    CS = DVR & DBQ
    
    dim oC
    set oC = server.createObject("ADODB.connection")
    oC.Open CS
    
    dim oRS
    set oRS = server.CreateObject("ADODB.recordset")
    oRS.Open "SELECT * FROM tabella", oC
    	response.Write "<TABLE BORDER='1' CELLSPACING='0' CELLPADDING='5'>"
    
    dim servizio, descrizione
    
    Do while not oRS.EOF 
     
    servizio = oRS("servizio")
    descrizione = oRS("descrizione")
    	response.Write "<TR><TD>" & servizio &"</TD>"
    	response.Write "<TD WIDTH='800'>" & descrizione & "</TD></TR>"
    
    oRS.MoveNext 	
    loop			
    response.Write "</TABLE>"
    
    
    oRS.Close
    set oRS= Nothing
    oC.Close
    set oC = Nothing
    %>
    Adesso vorrei creare una pagina che mi consenta tramite form di inserire nuovi record nello stesso database servizi.mdb

    Per il form penso vada bene cosi`

    codice:
    <form method="post" action="script.asp?id=1">
    <input type="text" name="servizio">
    
    <input type="text" name="descrizione">
    
    </form>
    Non so pero` cosa mettere nell'attributo action

    A questo punto devo capire come inserire la query INSERT INTO

  4. #4
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Nell'action devi metter il nome di una pagina che conterrà lo script di inserimento.
    Se cerchi nel forum verrano fuori trecento messaggi con all'interno query INSERT INTO già pronte: ti basta cambaire le variabili.

    Roby

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    22
    ancora non riesco a risolvere:

    asp

    codice:
    <%
    ON ERROR RESUME NEXT
    
    dim driverString, databaseString, connString
    
    driverString = "DRIVER={Microsoft Access Driver (*.mdb)}; "
    databaseString = "DBQ=" & Server.MapPath("db_servizi/servizi.mdb") & ";"
    connString = driverString & databaseString
    
    dim objConn 
    set objConn = server.createObject("ADODB.connection")
    objConn.Open connString
    
    objRecSet
    set objRecSet = server.CreateObject("ADODB.recordset")
    
    dim query
    query = "INSERT INTO * FROM tabella (servizi,descrizione) VALUES('"&servizio&"','"&descrizione&"')"
    
    objRecSet.Open query, objConn
    response.Write "<TABLE BORDER='5' CELLSPACING='5' CELLPADDING='5'>"
    
    dim servizio, descrizione
    Do while not objRecSet.EOF
    servizio = objRecSet("servizio")
    descrizione= objRecSet("descrizione")
    response.Write "<TR><TD>" & servizio& "</TD>"
    response.Write "<TD>" & descrizione & "</TD></TR>"
    
    objRecSet.MoveNext
    loop
    response.Write "</TABLE>"
    set objRecSet = Nothing
    set objConn = Nothing
    %>
    form

    codice:
    <form method="post" action="inviato.asp">
    <input type="text" name="servizio">
    
    <input type="text" name="descrizione">
    
    <input type="submit" name="Submit" value="Invia">
    </form>
    secondo me devo pulire ancora l'asp! ma non so dove!


    e se il campo descrizione invece di una casella di testo volessi mettere una area di testo mi basterebbe mettere questo codice?????

    codice:
    <textarea rows="4" name="descrizione" cols="30"></textarea>

  6. #6
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    codice:
    <form method="post" action="inviato.asp">
    <input type="text" name="servizio" />
    
    <textarea rows="4" name="descrizione" cols="30"></textarea>
    
    
    <input type="submit" name="Submit" value="Invia" />
    </form>
    INVIATO.ASP
    codice:
    <%
    servizio = trim(request("servizio"))
    descrizione = trim(request("descrizione"))
    
    if len(servizio) > 0 and len(descrizione) > 0 then
    driverString = "DRIVER={Microsoft Access Driver (*.mdb)}; "
    databaseString = "DBQ=" & Server.MapPath("db_servizi/servizi.mdb") & ";"
    connString = driverString & databaseString
    
    dim objConn 
    set objConn = server.createObject("ADODB.connection")
    objConn.Open connString
    
    servizio = replace(servizio,"'","''")
    descrizione= replace(descrizione,"'","''")
    
    query = "INSERT INTO * FROM tabella (servizi,descrizione) VALUES('"&servizio&"','"&descrizione&"')"
    objConn.Execute(query)
    
    objConn.Close
    set objConn = Nothing
    
    end if
    %>
    Ora devi cercare di capire cosa ho scritto...

    Roby

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    22
    hai proprio ragione, ho difficolta` a capire ma e` quasi tutto chiaro (sai sto studiando per un esame e questo mi serve per fare il sito da presentare)

    adesso mi da un errore!!!

    codice:
    Tipo di errore:
    Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
    [Microsoft][Driver ODBC Microsoft Access] Errore di sintassi nell'istruzione INSERT INTO.
    /sedna/inviato.asp, line 23
    non capisco perche`
    ufffffffff

  8. #8
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    codice:
    query = "INSERT INTO tabella (servizi,descrizione) VALUES('"&servizio&"','"&descrizione&"')"
    Roby

  9. #9
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    22
    Tipo di errore:
    Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
    [Microsoft][Driver ODBC Microsoft Access] Per l'operazione è necessaria una query aggiornabile.


    ma perchè??

  10. #10
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    22
    ho fatto anche questo asp

    codice:
    <%
    dim DVR, DBQ, CS, oC, oRS
    DVR = "DRIVER={Microsoft Access Driver (*.mdb)}; "
    DBQ = "DBQ=" & Server.MapPath("db_servizi/servizi.mdb") & ";"
    CS = DVR & DBQ
    set oC = server.createobject("ADODB.connection")
    set oRS = server.createobject ("ADODB.recordset")
    set oCM = server.createobject ("ADODB.command")
    %>
    
    
    
    <%
    SQL = "INSERT INTO tabella (servizio,descrizione) VALUES ('"&servizio&"','"&descrizione&"')"
    
    oC.Open CS
    
    oCM.ActiveConnection = oC
    oCM.CommandText = SQL
    oCM.CommandType = adCmdText
    oCM.Execute
    
    response.write SQL
    oC.Close
    set oC = Nothing
    
    %>
    ma anche questo

    Tipo di errore:
    Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
    [Microsoft][Driver ODBC Microsoft Access] Per l'operazione è necessaria una query aggiornabile

    :master:

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.