webForumDet fria alternativet
Logga in / Bli medlem

Syntaxfel i Update uttryck

ASP

28 svar · 390 visningar · startad av Mav · sida 2 av 2

Frågan, av Mav

Har följande kod som inte vill fungera o uppdatera databasen. Rad 20 är fel. rs.Open SQL, fritid, adOpenDynamic Övrig kod ser ut som följer. <% Set fritid = Server.CreateObject("ADODB.Connection") Set rs = Server.CreateObject("ADODB.Recordset") fritid.Open "Driver={Microsoft Access Driver (.mdb)}; (.mdb)}; DBQ=c:\db\adressbok.mdb"%> <% SQL = "UPDATE adressbok SET WHERE Kundnr = '

Läs frågan i sin helhet →
Medlem sedan juni 2000117 inlägg
#21

Ligger först på sidan för att kolla login & pass direkt innan den skriver ut ngt.

<%
Set fritid = Server.CreateObject("ADODB.Connection")
Set rs = Server.CreateObject("ADODB.Recordset")
fritid.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=c:\Frontpage Webs\Resport\dbboende\db\adressbok.mdb"
SQL = "SELECT * FROM adressbok Where Kundnr = '" & Request.Form("Kundnr") & "'"
rs.OPEN SQL, fritid
If RS.EOF Then
Response.Redirect("feluser.asp") 
End If
If NOT rs("password")=Request.Form("password") Then
Response.Redirect("felpass.asp") 
End If
%>

Om login ok så hämtas alla upgifter o skrivs ut på sidan så här:

<%=rs("Kundnamn")%>
<%=rs("Kundnr")%>
osv....
Medlem sedan mars 20001 266 inlägg
#22

Hur ser då sidan med själva formuläret ut?
Där man gör ändringarna vill säga.

Andreas

Medlem sedan juni 2000117 inlägg
#23

Så här:

<%
Set fritid = Server.CreateObject("ADODB.Connection")
Set rs = Server.CreateObject("ADODB.Recordset")
fritid.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=c:\Frontpage Webs\Resport\dbboende\db\adressbok.mdb"%>
<%
SQL = "SELECT * From adressbok"
rs.Open SQL, fritid %>

Fälten som kan ändras:

<input type="text" name="kednamn" value="<%=rs("Kednamn")%>">
Medlem sedan mars 20001 266 inlägg
#24

Ok verkade först lite skumt med din kod, du skriver ut ett värde i textboxen men den hämtar inte från nåt borde väl vara:
SQL = "SELECT * From adressbok WHERE Kundnr = '" & Request("Kundnr") & "'"

Sen nere i form lägger du till:
<input type="hidden" name="Kundnr" value="<%=rs("Kundnr")%>">

Testa det det borde ge reultat, annars kriver du ut hela form sidan så jag kan se all kod, eller är det så att input fälten lopas?

Andreas

Medlem sedan juni 2000117 inlägg
#25

Får detta istället:
ADODB.Field fel '80020009'
Antingen är BOF eller EOF satt till True, eller så har aktuell post raderats; åtgärden som programmet begärt kräver en aktuell post.
?
Här kommer hela form sidan:

<html>
<body>
<%
Set fritid = Server.CreateObject("ADODB.Connection")
Set rs = Server.CreateObject("ADODB.Recordset")
fritid.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=c:\Frontpage Webs\Resport\dbboende\db\adressbok.mdb"%>
<%
SQL = "SELECT * From adressbok WHERE Kundnr = '" & Request("Kundnr") & "'"
rs.Open SQL, fritid %>
<table width="562" border="0" cellspacing="0" cellpadding="0">
<%=rs("Kundnamn")%> 
        <br>
<form action="update_ok.asp" method="post" name="update">
Namn:<br><%=rs("Kundnamn")%> 
Ked:<input type="text" name="kednamn" value="<%=rs("Kednamn")%>">
adress:<%=rs("adress")%>
<input type="text" name="telefonbok" value="<%=rs("Telefonbok")%>" size="30" maxlength="20">
Fax:<input type="text" name="fax" value="<%=rs("Fax")%>" maxlength="20" size="30">
E-postadress:<input type="text" name="epost" value="<%=rs("Epost")%>" size="50" maxlength="40">
Hemsida:<input type="text" name="hemsidaurl" value="<%=rs("Hemsidaurl")%>" size="50" maxlength="40">

'osv...
'skriver inte hela eftersom det blir lite långt

<input type="submit" name="Submit" value="Uppdatera uppgifter">
<input type="hidden" name="Kundnr" value="<%=rs("Kundnr")%>">
</FORM>
</body>
</html>
Medlem sedan dec. 19996 721 inlägg
#26

Variablen du skickar med kallar du ju för ID, inte Kundnr. Därför ska det vara

SQL = "SELECT * From adressbok WHERE Kundnr = '" & Request("ID") & "'"

om jag fattat arbetsgången rätt

Medlem sedan juni 2000117 inlägg
#27

Gjorde ändringen som du föreslog men får fortfarande samma felmeddelande. Blir snart tokig, är det ingen som har en fungerande update sida som jag kan titta på?

Medlem sedan dec. 19996 721 inlägg
#28

Hur ser filerna ut nu?

Upptäckte ett fel i UPDATE-satsen. Ett komma har smugit sig in före WHERE.

Medlem sedan juni 2000117 inlägg
#29

Såg det oxå nu :-). Dock får jag ett annat felmeddelande istället:
Microsoft OLE DB Provider for ODBC Drivers fel '80040e07'
[Microsoft][Drivrutin för ODBC Microsoft Access] Typblandningsfel i villkorsuttryck.
update_ok.asp, rad 19

Hur menar du, att filerna ser ut?

265 ms totalt · 4 externa anrop · v20260731065814-full.5386d3bf
128 ms — deklarationer (db)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)