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?????????![]()
![]()
![]()
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?????????![]()
![]()
![]()
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
www.creamweb.it [v. 3.0]
:: Script ASP!
:: Web directory gratuita!
:: Campioni del mondo!
allora io ho nel sito gia` un database il lettura
il codice asp e` qiesto
Adesso vorrei creare una pagina che mi consenta tramite form di inserire nuovi record nello stesso database servizi.mdbcodice:<% 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 %>
Per il form penso vada bene cosi`
Non so pero` cosa mettere nell'attributo actioncodice:<form method="post" action="script.asp?id=1"> <input type="text" name="servizio"> <input type="text" name="descrizione"> </form>
A questo punto devo capire come inserire la query INSERT INTO
![]()
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
www.creamweb.it [v. 3.0]
:: Script ASP!
:: Web directory gratuita!
:: Campioni del mondo!
ancora non riesco a risolvere:
asp
formcodice:<% 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 %>
secondo me devo pulire ancora l'asp! ma non so dove!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>
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>
INVIATO.ASPcodice:<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>
Ora devi cercare di capire cosa ho scritto...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 %>![]()
Roby
www.creamweb.it [v. 3.0]
:: Script ASP!
:: Web directory gratuita!
:: Campioni del mondo!
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!!!
non capisco perche`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
ufffffffff
Robycodice:query = "INSERT INTO tabella (servizi,descrizione) VALUES('"&servizio&"','"&descrizione&"')"
www.creamweb.it [v. 3.0]
:: Script ASP!
:: Web directory gratuita!
:: Campioni del mondo!
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è??
![]()
![]()
ho fatto anche questo asp
ma anche questocodice:<% 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 %>
Tipo di errore:
Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
[Microsoft][Driver ODBC Microsoft Access] Per l'operazione è necessaria una query aggiornabile
:master:![]()