Avatar billede sigurd_h Praktikant
02. juni 2002 - 00:35 Der er 8 kommentarer og
1 løsning

Opdater Database

Hej

Jeg skal bruge et script:

filen skal hedde opdater.asp hvis man så skriver opdater.asp?id=2 så skal den hente rækken hvor id er 2 og den skal så putte "beskrivelse" fra id 2 ind i et text-area så man kan ændre på indholdet. Derefter trykker man så på Opdater (knap) så bliver indholdet opdateret. Jeg har selv prøvet og lave det, men det er en for stor mundfuld til mig.

Håber sandelig at der en der kan og vil hjælpe mig!

Mvh.

Sigurd
Avatar billede tmceu Praktikant
02. juni 2002 - 01:04 #1
Set objConn = Server.CreateObject("ADODB.Connection")
Set objRS = Server.CreateObject("ADODB.Recordset")

objConn.ConnectionString = ""

If objConn.State <> 1 Then objConn.Open

On Error Resume Next

If Request.Form("Submit") <> "" Then
strSQL = "UPDATE Tabel SET Beskrivelse='" & Request.Form("Beskrivelse") & "'"

objConn.Execute(strSQL)

If objConn.Errors.Count <> 0 Then
  For Each Item In objConn.Errors
  AddFormValidationError("Systemfejl: " & Item.Description)
  Next
  Response.End
End If

Response.Write "Data Opdateret"

Else
strSQL = "SELECT Beskrivelse FROM Tabel WHERE [ID] = " & Request.QueryString("ID")

Set objRS = objConn.Execute(strSQL)

If Not objRS.EOF Then

Response.Write "<FORM ACTION=""" & Request.ServerVariables("SCRIPT_NAME") & """ METHOD=""POST"">"
Response.Write "<TEXTAREA NAME=""Beskrivelse"">" & objRS("Beskrivelse") & "</TEXTAREA>"
Response.Write "<INPUT TYPE=""SUBMIT"" NAME=""SUBMIT"" VALUE=""SUBMIT"">"
Response.Write "</FORM>"
End If

objRS.Close
objConn.Close
Avatar billede tmceu Praktikant
02. juni 2002 - 01:05 #2
Der manglede en End If

Set objConn = Server.CreateObject("ADODB.Connection")
Set objRS = Server.CreateObject("ADODB.Recordset")

objConn.ConnectionString = ""

If objConn.State <> 1 Then objConn.Open

On Error Resume Next

If Request.Form("Submit") <> "" Then
strSQL = "UPDATE Tabel SET Beskrivelse='" & Request.Form("Beskrivelse") & "'"

objConn.Execute(strSQL)

If objConn.Errors.Count <> 0 Then
  For Each Item In objConn.Errors
  AddFormValidationError("Systemfejl: " & Item.Description)
  Next
  Response.End
End If

Response.Write "Data Opdateret"

Else
strSQL = "SELECT Beskrivelse FROM Tabel WHERE [ID] = " & Request.QueryString("ID")

Set objRS = objConn.Execute(strSQL)

If Not objRS.EOF Then

  Response.Write "<FORM ACTION=""" & Request.ServerVariables("SCRIPT_NAME") & """ METHOD=""POST"">"
  Response.Write "<TEXTAREA NAME=""Beskrivelse"">" & objRS("Beskrivelse") & "</TEXTAREA>"
  Response.Write "<INPUT TYPE=""SUBMIT"" NAME=""SUBMIT"" VALUE=""SUBMIT"">"
  Response.Write "</FORM>"
End If
End If

objRS.Close
objConn.Close
Avatar billede tmceu Praktikant
02. juni 2002 - 01:08 #3
Og så glemte jeg din ID i opdateringen :-)

Set objConn = Server.CreateObject("ADODB.Connection")
Set objRS = Server.CreateObject("ADODB.Recordset")

objConn.ConnectionString = ""

If objConn.State <> 1 Then objConn.Open

On Error Resume Next

If Request.Form("Submit") <> "" Then
strSQL = "UPDATE Tabel SET Beskrivelse='" & Request.Form("Beskrivelse") & "'"
strSQL = strSQL & " WHERE [ID] = " & Request.Form("ID")

objConn.Execute(strSQL)

If objConn.Errors.Count <> 0 Then
  For Each Item In objConn.Errors
  AddFormValidationError("Systemfejl: " & Item.Description)
  Next
  Response.End
End If

Response.Write "Data Opdateret"

Else
strSQL = "SELECT [ID], Beskrivelse FROM Tabel WHERE [ID] = " & Request.QueryString("ID")

Set objRS = objConn.Execute(strSQL)

If Not objRS.EOF Then

  Response.Write "<FORM ACTION=""" & Request.ServerVariables("SCRIPT_NAME") & """ METHOD=""POST"">"
  Response.Write "<INPUT TYPE=""HIDDEN"" NAME=""ID"" VALUE=""" & objRS("ID") & """>"
  Response.Write "<TEXTAREA NAME=""Beskrivelse"">" & objRS("Beskrivelse") & "</TEXTAREA>"
  Response.Write "<INPUT TYPE=""SUBMIT"" NAME=""SUBMIT"" VALUE=""SUBMIT"">"
  Response.Write "</FORM>"
End If
End If

objRS.Close
objConn.Close
Avatar billede tmceu Praktikant
02. juni 2002 - 01:10 #4
Det er ved at være en smule pinligt, men der var en lille fejl i fejlhåndteringen. Nu tror jeg den er der :-)

Set objConn = Server.CreateObject("ADODB.Connection")
Set objRS = Server.CreateObject("ADODB.Recordset")

objConn.ConnectionString = ""

If objConn.State <> 1 Then objConn.Open

On Error Resume Next

If Request.Form("Submit") <> "" Then
strSQL = "UPDATE Tabel SET Beskrivelse='" & Request.Form("Beskrivelse") & "'"
strSQL = strSQL & " WHERE [ID] = " & Request.Form("ID")

objConn.Execute(strSQL)

If objConn.Errors.Count <> 0 Then
  For Each Item In objConn.Errors
  Response.Write Item.Description & "<BR>"
  Next
  Response.End
End If

Response.Write "Data Opdateret"

Else
strSQL = "SELECT [ID], Beskrivelse FROM Tabel WHERE [ID] = " & Request.QueryString("ID")

Set objRS = objConn.Execute(strSQL)

If Not objRS.EOF Then

  Response.Write "<FORM ACTION=""" & Request.ServerVariables("SCRIPT_NAME") & """ METHOD=""POST"">"
  Response.Write "<INPUT TYPE=""HIDDEN"" NAME=""ID"" VALUE=""" & objRS("ID") & """>"
  Response.Write "<TEXTAREA NAME=""Beskrivelse"">" & objRS("Beskrivelse") & "</TEXTAREA>"
  Response.Write "<INPUT TYPE=""SUBMIT"" NAME=""SUBMIT"" VALUE=""SUBMIT"">"
  Response.Write "</FORM>"
End If
End If

objRS.Close
objConn.Close
Avatar billede sigurd_h Praktikant
02. juni 2002 - 02:03 #5
Hvor står databasen?

Skal jeg bare tilføje dette i toppen?

Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("database.mdb")
Conn.Open DSN

??
Avatar billede tmceu Praktikant
02. juni 2002 - 02:24 #6
Jeg kunne af gode grunde ikke skrive din database ind, da jeg intet vidste om hvilken database du bruger :-) Det er derfor jeg havde lavet en objConn.ConnectionString = "" <- tom connectionstring.

Denne linie skal rettes til:

objConn.ConnectionString = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("database.mdb")
Avatar billede sigurd_h Praktikant
02. juni 2002 - 11:53 #7
tmceu > Er du på IRC eller ICQ, så kan vi lettere snakke der. For det virker ikke helt rigtigt...
Avatar billede tmceu Praktikant
02. juni 2002 - 11:54 #8
Smid dit ICQ# så kontakter jeg dig...
Avatar billede sigurd_h Praktikant
02. juni 2002 - 11:55 #9
109001879
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