Avatar billede Slettet bruger
20. november 2002 - 14:18 Der er 11 kommentarer

Opdatere poster i DB med ASP

Hej
Jeg er rimelig nybegynder udi ASP. Jeg har lavet et par ASP sider hvor jeg søger i databasen samt en formular hvor jeg kan oprettet nye poster i DB,og det virker fint - men nu er mit problem -  kan jeg hente eksisterende poster via ASP ind i en formular og rette dem/opdate i Databasen.
liri
Avatar billede soes Nybegynder
20. november 2002 - 14:32 #1
ja, det kan sagtens lade sig goere. Hvor meget skal du have hjaelp til?
Er det kun hvordan du opdatere eller er det ogsaa til hvordan du faar dataen over i form felterne?
Avatar billede Slettet bruger
20. november 2002 - 14:32 #2
Begge dele tak.
Avatar billede soes Nybegynder
20. november 2002 - 14:44 #3
ok...

Vaerdier til formularen:
<%
' Conn er din forbindelse til databasen

Sql = "SELECT * FROM DinTabel WHERE id = 'something'"

Set Rs = Conn.Execute(Sql)

Response.write("<form name='navn' method='post' action='myside.asp'>" & vbcrlf)
Response.write("<input type='text' name='felt1' value='"& Rs("felt1")&"'><br>" & vbcrlf)
Response.write("<textarea name='felt2' value='"& Rs("felt2") &"'><br>" & vbcrlf)
Response.write("<input type='hidden' name='id' value='"& Rs("id") &"'>" & vbcrlf)
Response.write("<input type='submit' value='Send'>" & vbcrlf)

Rs.Close
Set Rs = Nothing
Conn.Close
Set Conn = Nothing
%>

Det var den nemme del :o)

MySide.asp
<%
strFelt1 = Replace(Request.Form("felt1"), "'", "''")
strFelt2 = Replace(Request.Form("felt2"), "'", "''")
intId = Request.Form("id")

Sql = "UPDATE DinTabel SET felt1 = '"& strFelt1 &"', felt2 = '"& strFelt2 &"' WHERE Id = " & intId

Conn.Execute(Sql)

Conn.Close
Set Conn = Nothing
%>
Avatar billede Slettet bruger
20. november 2002 - 14:46 #4
Jeg prøver det lige, du hører....
Avatar billede Slettet bruger
20. november 2002 - 14:58 #5
Jeg får denne fejl
Microsoft JScript compilation error '800a03ec'

Expected ';'

/d_projekt/opdaterDB_ny.asp, line 12

Set Rs = Conn.Execute(Sql)
----^
Min kode ser sådan ud:
<%@ language="JScript" %>
<!--#INCLUDE FILE = "global.asp" -->
<html>

<head>
<title>Opdater projekter</title>
</head>
<%

Sql = "SELECT * FROM Projekter WHERE id = 'something'"

Set Rs = Conn.Execute(Sql)

Response.write("<form name='navn' method='post' action='myside.asp'>" & vbcrlf)
Response.write("<input type='text' name='felt1' value='"& Rs("felt1")&"'><br>" & vbcrlf)
Response.write("<textarea name='felt2' value='"& Rs("felt2") &"'><br>" & vbcrlf)
Response.write("<input type='hidden' name='id' value='"& Rs("id") &"'>" & vbcrlf)
Response.write("<input type='submit' value='Send'>" & vbcrlf)

Rs.Close
Set Rs = Nothing
Conn.Close
Set Conn = Nothing
%>

<body>
</body>
</html>
Avatar billede soes Nybegynder
20. november 2002 - 15:01 #6
hehe, du skriver i JScript og jeg skriver i VbScript.
Jeg har aldrig skrevet i JScript foer saa hvis du vil have mit til at virke skal du lige aendre <%@ language="JScript" %> til <%@ language="VbScript" %>
Avatar billede Slettet bruger
20. november 2002 - 15:06 #7
Så ser fejlen sådan ud
Microsoft VBScript runtime error '800a01a8'

Object required: ''

/d_projekt/opdaterDB_ny.asp, line 12
Koden er nu:
<%@ language="VBScript" %>
<!--#INCLUDE FILE = "DSN.asp" -->
<html>

<head>
<title>Opdater projekter</title>
</head>
<%

Sql = "SELECT * FROM Projekter WHERE id = 'something'"

Set Rs = Conn.Execute(Sql)

Response.write("<form name='navn' method='post' action='myside.asp'>" & vbcrlf)
Response.write("<input type='text' name='felt1' value='"& Rs("felt1")&"'><br>" & vbcrlf)
Response.write("<textarea name='felt2' value='"& Rs("felt2") &"'><br>" & vbcrlf)
Response.write("<input type='hidden' name='id' value='"& Rs("id") &"'>" & vbcrlf)
Response.write("<input type='submit' value='Send'>" & vbcrlf)

Rs.Close
Set Rs = Nothing
Conn.Close
Set Conn = Nothing
%>

<body>
</body>
</html>
Avatar billede soes Nybegynder
20. november 2002 - 15:11 #8
du skal oprette en forbindelse til din database foerst. Siden jeg ikke kender stien til den kan jeg ikke goere det for dig, men det er som reglen noget i denne stil.
Set COnn = Server.CreateObject("ADODB.Connection")
Conn.Open...
Avatar billede Slettet bruger
20. november 2002 - 15:21 #9
Nu får jeg denne fejl:
Microsoft OLE DB Provider for ODBC Drivers error '80040e10'

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

/d_projekt/opdaterDB_ny.asp, line 12
Koden:
<html>

<head>
<title>Opdater projekter</title>
</head>
<%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open("Provider=MSDASQL;DSN=Projekter;MaxBufferSize=512;PageTimeout=2;")

Sql = "SELECT * FROM Projekter WHERE id = 'Projektnavn'"

Set Rs = Conn.Execute(Sql)

Response.write("<form name='navn' method='post' action='myside.asp'>" & vbcrlf)
Response.write("<input type='text' name='felt1' value='"& Rs("felt1")&"'><br>" & vbcrlf)
Response.write("<textarea name='felt2' value='"& Rs("felt2") &"'><br>" & vbcrlf)
Response.write("<input type='hidden' name='id' value='"& Rs("id") &"'>" & vbcrlf)
Response.write("<input type='submit' value='Send'>" & vbcrlf)

Rs.Close
Set Rs = Nothing
Conn.Close
Set Conn = Nothing
%>

<body>
</body>
</html>
Avatar billede Slettet bruger
20. november 2002 - 15:49 #10
Hej Soes
Jeg er desværre nødt til at lukke ned nu, men hvis du har en løsningen kigger jeg senere. Tak.
Avatar billede Slettet bruger
12. september 2007 - 12:02 #11
Lukker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester