Avatar billede simsen Mester
20. marts 2006 - 20:21 Der er 2 kommentarer og
1 løsning

Den opdaterer ikke i databasen

Hejsa

Jeg har en edit side, hvor jeg først loader tabel indhold, som så når Gem knappen trykkes, skal den opdatere tabellen og gå til anden side.

Den loader perfekt de forskellige felter fra tabellen. Men når jeg forsøger at gemme, så sker der bare ikke noget - den reloader de gamle værdier og den fremkommer ikke med fejl.

Jeg vil lige tilføje, at jeg forsøger at skrive ID ud - og begge gange får jeg tal retur. Jeg forsøger det med:
<% response.write "ID er " & ID %>

Hvor i følgende kode, får den ikke fat i det den skal (eller hvad er der galt)?

<!-- #INCLUDE FILE="../../common/checksession.asp" -->
<!-- #INCLUDE FILE="../../common/dbconn1.asp" -->
<!-- #INCLUDE FILE="../../common/headerAdm.asp" -->
   
    <table width="100%" border="0" cellpadding="10">
    <tr>
        <td width="80%" valign="top">
            <h1>Ret produkt</h1>

<%
ID = request("ID")
sWhat = trim(Request("produktID"))
smenuID = trim(Request("menuID"))
smodel = Trim(Request.Form("model"))
spris = Trim(Request.Form("pris"))
sbillede = Trim(Request.Form("billede"))
skortbeskrivelse = Trim(Request.Form("kortSalg"))
slangbeskrivelse = Trim(Request.Form("langSalg"))
stekniskbeskrivelse = Trim(Request.Form("teknik"))


if lcase(sPageAction) = "" then
    LoadVars
    ShowEditor
end if
if lcase(sPageAction) = "save" then
    SaveVars
    ShowOk
end if


Sub ShowEditor
response.write "ID er " & request("ID")
%>
<FORM METHOD="POST" ACTION="ret.asp?action=save&ID=<%=(ID)%>">
<% response.write "ID er " & ID %>
<TABLE BORDER="2" CELLPADDING="3" CELLSPACING="0" BORDERCOLOR="#C0C0C0" BORDERCOLORDARK="#C0C0C0" BORDERCOLORLIGHT="#C0C0C0">
<TR>
<TD valign="middle" class="H4"><b>MenuID</b></TD>
<TD><INPUT TYPE="text" NAME="menuID" SIZE="50" VALUE="<% Response.WRite(smenuID) %>"></TD>
</TR>
<TR>
<TD valign="middle" class="H4"><b>Produktnavn/model</b></TD>
<TD><INPUT TYPE="text" NAME="model" SIZE="50" VALUE="<% Response.WRite(smodel) %>"></TD>
</TR>
<TR>
<TD valign="middle" class="H4"><b>Pris</b></TD>
<TD><INPUT TYPE="text" NAME="pris" SIZE="50" VALUE="<% Response.WRite(spris) %>"></TD>
</TR>
<TR>
<TD valign="middle" class="H4"><b>Billede navn</b></TD>
<TD><INPUT TYPE="text" NAME="billede" SIZE="50" VALUE="<% Response.WRite(sbillede) %>"></TD>
</TR>
<TR>
<TD valign="top" class="H4"><b>Kort beskrivelse</b></TD>
<td><textarea name="kortbeskrivelse" rows="5" cols="53"><% Response.WRite(skortbeskrivelse) %></textarea></td>
</tr>
<tr>
<TD valign="top" class="H4"><b>Lang beskrivelse</b></TD>
<td><textarea name="langbeskrivelse" rows="15" cols="53"><% Response.WRite(slangbeskrivelse) %></textarea></td>
</TR>
<tr>
<TD valign="top" class="H4"><b>Teknisk beskrivelse</b></TD>
<td><textarea name="tekniskbeskrivelse" rows="15" cols="53"><% Response.WRite(stekniskbeskrivelse) %></textarea></td>
</TR>
</TABLE>
<BR><BR>
<INPUT TYPE="submit" VALUE="Gem"> <INPUT TYPE="reset" Value="Fortryd"><BR>
</FORM>
        </td>
    </tr>
    </table>
<%
End Sub

Sub LoadVars

Set rs = Server.CreateObject("ADODB.RecordSet")
dataSQL = "SELECT * FROM Produkter where produktID = " & ID & ";"
rs.Open dataSQL, whtConn, 1

ID = rs.fields("produktID").value
smenuID = Rs.Fields("menuID").value
smodel = Rs.Fields("model").value
spris = Rs.Fields("pris").value
sbillede = Rs.Fields("billede").value
skortbeskrivelse = Rs.Fields("kortSalg").value
slangbeskrivelse = Rs.Fields("langSalg").value
stekniskbeskrivelse = Rs.Fields("teknik").value

rs.close
End Sub

Sub SaveVars
Set rs = Server.CreateObject("ADODB.RecordSet")
dataSQL = "update Produkter set menuID = " & request.form("smenuID") & " where produktID = " & ID & ";"
Response.Write dataSQL
response.end
rs.Open dataSQL, whtConn, 1

'Rs.Fields("menuID").value = smenuID
'Rs.Fields("model").value = soverskrift
'Rs.Fields("pris").value = soverskriftlink
'Rs.Fields("billede").value = sopbygning
'Rs.Fields("kortSalg").value = sopbygninglink
'Rs.Fields("beskrivelse").value = sbeskrivelse

End Sub

Sub ShowOK
%>
        </td>
    </tr>
    </table>
<%
response.redirect("default.asp")
end Sub
%>

</body>
</html>
Avatar billede eagleeye Praktikant
20. marts 2006 - 20:41 #1
Så vidt jeg kan se sætte du ikke variablen sPageAction som afgør om der skal vises en editor eller gemmes til databasen. Så prøv at tilføje:

sPageAction = Request.QueryString("action")


og sæt den ind før if sætningen:

if lcase(sPageAction) = "" then
Avatar billede simsen Mester
20. marts 2006 - 21:21 #2
Det var da lige netop det, jeg havde glemt - tak skal du have - smid et svar og du får dine points

mvh
simsen
Avatar billede eagleeye Praktikant
20. marts 2006 - 21:23 #3
Ok her et svar ;-)
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