webForumDet fria alternativet

Felmeddelande i asp.koden

ASP

1 svar · 188 visningar · startad av MrBergman

Medlem sedan mars 200369 inlägg
Frågan#1

Får ett felmeddelande i denna kod, ngn som vet var/vad felet kan vara.
Är inge grymm på asp så vore fint med lite hjälp.

Felmeddelandet:


Microsoft JET Database Engine (0x80040E14)
Syntaxfel (operator saknas) i frågeuttrycket ''sokvag' filnamn='filnamn' uppdaterad='2003-11-11' fabrikat='1' kat='4' filtyp='doc' sprak='Svenska''.
/editfil.asp, line 112

ASP kod:


<%Option Explicit%>
<html>
<head>
<title>Uppdatera filer</title>
</head>
<body>
<%

Dim strConnect   'Connect-sträng för åtkomst till Databasen
Dim datConnection 'Databaskoppling
Dim strSQL       'Variabel för SQL-fråga
Dim recUsers      'Ett recordset för hittade poster

'Skapar Connectsträngen för ACCESS med driver och sökvägen till databasen
strConnect ="Provider=Microsoft.Jet.OLEDB.4.0; " & "Data Source="
strConnect = strConnect & Server.MapPath(".") & "\123data.mdb"
   
'Öppnar anslutningen till databasen
Set datConnection = Server.CreateObject("ADODB.Connection")
datConnection.Open strConnect

Select Case Request.Item("flag")  'Avgör vilken Subrutin som skall köras
   Case "formUpdate"
      Call formUpdate()	'anv ändrar uppgifter
   Case "dbUpdate"
      Call dbUpdate()	'uppdaterad adress skrivs till DB
   Case Else
      Call all()	'anv väljer vilken som skall uppdateras
End Select

Sub all()   'Visa alla poster

   'Hämtar förnamn, efternamn och användarid från Användartabellen
   strSQL = " SELECT rubrik, sokord, beskrivning, sokvag, filnamn, uppdaterad, fabrikat, kat, filtyp, sprak, id"
   strSQL = strSQL & " FROM filer "
   strSQL = strSQL & " ORDER BY rubrik "

   'Skapar instans av ett Recordset-objekt och öppnar det
   Set recUsers = datConnection.Execute(strSQL)

   'Använder värdena från recordsetet för att bygga html
   Response.Write("<h2>Klicka på den du vill uppdatera</h2>")

   If recUsers.eof Then
     Response.write("<b>Vi har inga användare</b>")
   Else
     Do Until recUsers.EOF
        Response.Write("<a href='editfil.asp?flag=formUpdate&id="& recUsers("id") &"'>")
        Response.Write(recUsers("rubrik") &" "& recUsers("sokord") &" "& recUsers("beskrivning") &" "& recUsers("sokvag") &" "& recUsers("filnamn") &" "& recUsers("uppdaterad") &" "& recUsers("fabrikat") &" "& recUsers("kat") &" "& recUsers("filtyp") &" "& recUsers("sprak") &"</a><br>")
        recUsers.movenext
     Loop
   End IF

   'Städar efter oss 
   Set recUsers=nothing
   Set datConnection = nothing

End Sub

Sub formUpdate()     'Låter användaren få ändra uppgifter om person
  
   'Hämtar alla uppgifter om en användare från Användartabellen
   strSQL = " SELECT * FROM filer "
   strSQL = strSQL & " WHERE id="& Request.QueryString("id")
   
   'Skapar instans av ett Recordset-objekt och öppnar det
   Set recUsers = datConnection.Execute(strSQL)
   %> 
   <h2>Uppdatera uppgifter</h2>
   <!--Uppgifterna skickas som textfält till samma sida och dbUpdate()-->
   <form action="editfil.asp" method="post" >
   <input type="text"   name="rubrik"  value="<%=recUsers("rubrik")%>" size="20"><br>
   <input type="text"   name="sokord"   value="<%=recUsers("sokord")%>" size="20"> <br>
   <input type="text"   name="beskrivning"      value="<%=recUsers("beskrivning")%>" size="20">    <br>
   <input type="text"   name="sokvag"      value="<%=recUsers("sokvag")%>" size="20">    <br>
   <input type="text" name="filnamn"     value="<%=recUsers("filnamn")%>" size="20"> <br>
   <input type="text" name="uppdaterad"     value="<%=recUsers("uppdaterad")%>" size="20">
   <input type="text" name="fabrikat"     value="<%=recUsers("fabrikat")%>" size="20">
   <input type="text" name="kat"     value="<%=recUsers("kat")%>" size="20">
   <input type="text" name="filtyp"     value="<%=recUsers("filtyp")%>" size="20">
   <input type="text" name="sprak"     value="<%=recUsers("sprak")%>" size="20">
   <input type="hidden" name="id"     value="<%=recUsers("id")%>">
   <input type="hidden" name="flag"       value="dbUpdate">
   <input type="submit" name="submit"     value="Uppdatera" >
   </form>
   <p>	<p><a href="javascript:history.go(-1);">« Tillbaka</a>
   <%
   'Städar efter oss 
   Set recUsers=nothing
   Set datConnection = nothing
   
End Sub

Sub dbUpdate()  'Skriv ny adress i tabellen Users
   
   'Lägger in förnamn, efternamn, telefon och email i Användartabellen
   strSQL = "UPDATE filer SET"
   strSQL = strSQL & " rubrik='"& Request.Form("rubrik") &"'," 
   strSQL = strSQL & " sokord='"& Request.Form("sokord") &"',"
   strSQL = strSQL & " beskrivning='"& Request.Form("beskrivning") &"',"
   strSQL = strSQL & " sokvag='"& Request.Form("sokvag") &"' "
   strSQL = strSQL & " filnamn='"& Request.Form("filnamn") &"' "
   strSQL = strSQL & " uppdaterad='"& Request.Form("uppdaterad") &"' "
   strSQL = strSQL & " fabrikat='"& Request.Form("fabrikat") &"' "
   strSQL = strSQL & " kat='"& Request.Form("kat") &"' "
   strSQL = strSQL & " filtyp='"& Request.Form("filtyp") &"' "
   strSQL = strSQL & " sprak='"& Request.Form("sprak") &"' "
   strSQL = strSQL & " WHERE id="& Request.Form("id")

    
   'Kör SQl-frågan
   datConnection.Execute(strSQL)

   'Städar
   Set datConnection = nothing
   
   'Meddelar användaren om att posten är uppdaterad
   %>
   <%=Request.Form("rubrik")%> <%=Request.Form("beskrivning")%> är nu uppdaterad <br>
   <a href="editfil.asp">Uppdatera en till</a>
   <%
End Sub
%>

</body>
</html>
Medlem sedan jan. 20032 285 inlägg
#2

Du har glömt några kommatecken ser det ut som.

   strSQL = "UPDATE filer SET"
   strSQL = strSQL & " rubrik='"& Request.Form("rubrik") &"'," 
   strSQL = strSQL & " sokord='"& Request.Form("sokord") &"',"
   strSQL = strSQL & " beskrivning='"& Request.Form("beskrivning") &"',"
   strSQL = strSQL & " sokvag='"& Request.Form("sokvag") &"',"
   strSQL = strSQL & " filnamn='"& Request.Form("filnamn") &"',"
   strSQL = strSQL & " uppdaterad='"& Request.Form("uppdaterad") &"',"
   strSQL = strSQL & " fabrikat='"& Request.Form("fabrikat") &"',"
   strSQL = strSQL & " kat='"& Request.Form("kat") &"',"
   strSQL = strSQL & " filtyp='"& Request.Form("filtyp") &"',"
   strSQL = strSQL & " sprak='"& Request.Form("sprak") &"'"
   strSQL = strSQL & " WHERE id="& Request.Form("id")
260 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
124 ms — deklarationer (db)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)