webForumDet fria alternativet

Syntaxfel i Update uttryck

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

MavMedlem 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....

------------------
//Mav

AGMedlem 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

MavMedlem 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")%>">

------------------
//Mav

AGMedlem 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

MavMedlem 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>

------------------
//Mav

[r]lade in sluttaggen för kod[/r]

[Redigerat av emission den 01 sep 2000]

emissionMedlem 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

MavMedlem 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å?

------------------
//Mav

emissionMedlem 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.

MavMedlem 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?

------------------
//Mav

145 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
142 ms — hämta tråd, inlägg och bilagor (db)