Avatar billede everclear Praktikant
11. september 2004 - 20:39 Der er 3 kommentarer og
1 løsning

Opdater database via fomr

Sidder og laver en side der gør det muligt for brugeren at redigere nogle poster i databasen....Dette har midlertidigt vildt mig nogle problemer, da jeg ikke kan få lov at opdatere databasen med de inputs der bliver sendt fra formen.

Koden til form-siden ser således ud:

<-- kode til edit.asp --!>

<html>
<head>
<link href="../../forAll.css" rel="stylesheet" type="text/css">
<HEAD>

<SCRIPT LANGUAGE="JavaScript">

<!-- Begin
function popUp(URL) {
day = new Date();
id = day.getTime();
eval("page" + id + " = window.open(URL, '" + id + "', 'toolbar=0,scrollbars=0,location=0,statusbar=0,menubar=0,resizable=0,width=500,height=500,left = 262,top = 134');");
}
// End -->
</script>

<title>Info</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<%

Set tempConn = Server.CreateObject("ADODB.Connection")
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("../../dbadmin/db/test.mdb")
tempConn.Open strDSN


strSQL = "Select * From brugte Where ID = " & Request.Querystring("id")

Set rs = tempConn.Execute(strSQL)
%>


<br>
<br>
<form name="Change" method="post" action="process.asp">
  <table width="50%" border="0" class="border1">
    <tr>
      <td width="16%"><font size="1" face="Geneva, Arial, Helvetica, sans-serif">Mærke:</font></td>
      <td width="84%"><input type="hidden" name="ID" value="<%=rs("ID")%>"><input type="text" name="Mærke" value="<%=rs("Mærke")%>"></td>
    </tr>
    <tr>
      <td><font size="1" face="Geneva, Arial, Helvetica, sans-serif">Model:</font></td>
      <td><input type="text" name="Model" value="<%=rs("Model")%>"></td>
    </tr>
    <tr>
      <td><font size="1" face="Geneva, Arial, Helvetica, sans-serif">&Aring;rgang:</font></td>
      <td><input type="text" name="Årgang" value="<%=rs("Årgang")%>"></td>
    </tr>
    <tr>
      <td><font size="1" face="Geneva, Arial, Helvetica, sans-serif">Kilometer:</font></td>
      <td><input type="text" name="Km" value="<%=rs("Km")%>"></td>
    </tr>
    <tr>
      <td><font size="1" face="Geneva, Arial, Helvetica, sans-serif">Pris:</font></td>
      <td><input type="text" name="Pris" value="<%=rs("Pris")%>"> </td>
    </tr>
    <tr>
      <td><font size="1" face="Geneva, Arial, Helvetica, sans-serif">Beskrivelse:</font></td>
      <td><textarea name="Beskrivelse" value="<%=rs("Beskrivelse")%>"></textarea></td>
    </tr>
    <tr>
      <td><font size="1" face="Geneva, Arial, Helvetica, sans-serif">Billede:</font></td>
      <td>&nbsp;</td>
    </tr>
  </table>
  <p>
    <input name="Submit" type="submit" class="forButton" value="Gem &aelig;ndringer">
  </p>
</form>
<%
tempConn.Close
Set tempConn = Nothing
%>
</body>
</html>

Formen poster så til process.asp som har følgende kode:


<-- kode til process.asp --!>

<html>
<title>Rediger post</title>
<link href="../../forAll.css" rel="stylesheet" type="text/css">
<head>
<link href="forAll.css" rel="stylesheet" type="text/css">
</head>
<body>
<%

Set tempConn = Server.CreateObject("ADODB.Connection")
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("../../dbadmin/db/test.mdb")
tempConn.Open strDSN



strSQL = "Select * From brugte Where ID = " & Request.FORM("ID")

Set rs = tempConn.Execute(strSQL)


rs("Mærke")=Request.Form("Mærke")
rs("Model")=Request.Form("Model")
rs("Årgang")=Request.Form("Årgang")
rs("Km")=Request.Form("Km")
rs("Pris")=Request.Form("Pris")
rs("Beskrivelse")=Request.Form("Beskrivelse")


rs.Update


Conn.Execute(strSQL)

' Luk databaseforbindelse
Conn.Close
Set Conn = Nothing
%>
<p class="forCopyright" align="center"><b>Data Indsat</b></p>

<p class="links"><a href="http://www.justimagine.dk/Admin/Tilfoej/addused.asp">Tilbage til administration</a></p>
</body>
</html>
-------------------------

Har prøvet diverse forskellige ting, men får den ene fejlmelding efter den anden....

Hvad er der galt?
Avatar billede eagleeye Praktikant
11. september 2004 - 23:31 #1
Dette kode:

strSQL = "Select * From brugte Where ID = " & Request.FORM("ID")

Set rs = tempConn.Execute(strSQL)


rs("Mærke")=Request.Form("Mærke")
rs("Model")=Request.Form("Model")
rs("Årgang")=Request.Form("Årgang")
rs("Km")=Request.Form("Km")
rs("Pris")=Request.Form("Pris")
rs("Beskrivelse")=Request.Form("Beskrivelse")


rs.Update


Conn.Execute(strSQL)


Er en blanding af to stil arter :) Enten bruger man et recordset rs("kolonne") = "xx" eller også laver men en UPDATE SQL sætning som man Executer. Du kan rette det før viste koden til dette som bruger det med rs("kolonne"):



Set rs=Server.CreateObject("ADODB.Recordset")
strSQL = "Select * From brugte Where ID = " & Request.FORM("ID")

rs.Open strSQL, tempConn,1,3

rs("Mærke")=Request.Form("Mærke")
rs("Model")=Request.Form("Model")
rs("Årgang")=Request.Form("Årgang")
rs("Km")=Request.Form("Km")
rs("Pris")=Request.Form("Pris")
rs("Beskrivelse")=Request.Form("Beskrivelse")

rs.Update
Avatar billede everclear Praktikant
12. september 2004 - 01:04 #2
Det giver mig så et stykke kode, der ser sådan ud:

<%


Set tempConn = Server.CreateObject("ADODB.Connection")
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("../../dbadmin/db/test.mdb")
tempConn.Open strDSN

Set rs=Server.CreateObject("ADODB.Recordset")
strSQL = "Select * From brugte Where ID = " & Request.FORM("ID")

rs.Open strSQL, tempConn,1,3

rs("Mærke")=Request.Form("Mærke")
rs("Model")=Request.Form("Model")
rs("Årgang")=Request.Form("Årgang")
rs("Km")=Request.Form("Km")
rs("Pris")=Request.Form("Pris")
rs("Beskrivelse")=Request.Form("Beskrivelse")

rs.Update

Conn.Close
Set Conn = Nothing

%>


Dette giver dog stadig en fejlmeddelese når jeg sender oplysningerne fra formen.
Avatar billede eagleeye Praktikant
12. september 2004 - 01:13 #3
Ok prøv lige at rette disse to linjer:

Conn.Close
Set Conn = Nothing

Til dette da connection hedder tempConn:

tempConn.Close
Set tempConn = Nothing
Avatar billede everclear Praktikant
12. september 2004 - 01:26 #4
Nice....det spiller bare nu:-)
Tak for det:-)
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