webForumDet fria alternativet

Updatefel

10 svar · 250 visningar · startad av Asa

AsaMedlem sedan dec. 20011 860 inlägg
#1

Jag använder detta uploadscript:
http://www.webforum.nu/showthread.php?s=&postid=377104

Men när jag lämnar nåt fält tomt så får jag felmess om Syntaxfel i UPDATE-utryck. Funkar när man fyller i alla fält. I databasen har jag så det är frivilligt att fylla i fälten.

Nån som vet varför det blir så?!?

icaaqMedlem sedan okt. 20005 273 inlägg
#2

hur ser felmesset ut och hur ser update satsen ut?

Mvh icaaq

AsaMedlem sedan dec. 20011 860 inlägg
#3

Felmess:

Feltyp:
Microsoft JET Database Engine (0x80040E14)
Syntaxfel i UPDATE-uttryck.
/stuff/jonny_shop/admin/changeProduct.asp, line 141

Samma typ av fel när jag lägger till en artikel oxå när jag ej fyllt i alla fält.

Kod:


<%byteCount = Request.TotalBytes
RequestBin = Request.BinaryRead(byteCount)
Set UploadRequest = CreateObject("Scripting.Dictionary")

BuildUploadRequest RequestBin

contentType   = UploadRequest.Item("picture").Item("ContentType")
filepathname  = UploadRequest.Item("picture").Item("FileName")
filename      = Right(filepathname,Len(filepathname)-InstrRev(filepathname,"\"))
value         = UploadRequest.Item("picture").Item("Value")
Product       = UploadRequest.Item("product").Item("Value")
Descr         = UploadRequest.Item("descr").Item("Value")
Category      = UploadRequest.Item("category").Item("Value")
Via_shop      = UploadRequest.Item("via_shop").Item("Value")
  If Via_shop = "true" Then
    Via_shop = "True"
  Else
    Via_shop = "False"
  End If
Artnr_1       = UploadRequest.Item("artnr_1").Item("Value")
Artnr_2       = UploadRequest.Item("artnr_2").Item("Value")
Artnr_3       = UploadRequest.Item("artnr_3").Item("Value")
Artnr_4       = UploadRequest.Item("artnr_4").Item("Value")
Artnr_5       = UploadRequest.Item("artnr_5").Item("Value")
Utf_1         = UploadRequest.Item("utf_1").Item("Value")
Utf_2         = UploadRequest.Item("utf_2").Item("Value")
Utf_3         = UploadRequest.Item("utf_3").Item("Value")
Utf_4         = UploadRequest.Item("utf_4").Item("Value")
Utf_5         = UploadRequest.Item("utf_5").Item("Value")
Ovrigt_1      = UploadRequest.Item("ovrigt_1").Item("Value")
Ovrigt_2      = UploadRequest.Item("ovrigt_2").Item("Value")
Ovrigt_3      = UploadRequest.Item("ovrigt_3").Item("Value")
Ovrigt_4      = UploadRequest.Item("ovrigt_4").Item("Value")
Ovrigt_5      = UploadRequest.Item("ovrigt_5").Item("Value")
Price_1       = UploadRequest.Item("price_1").Item("Value")
Price_2       = UploadRequest.Item("price_2").Item("Value")
Price_3       = UploadRequest.Item("price_3").Item("Value")
Price_4       = UploadRequest.Item("price_4").Item("Value")
Price_5       = UploadRequest.Item("price_5").Item("Value")
Fil           = filename 

Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject")
extension = right(Fil,len(Fil) - instr(Fil,".") +1)
Filen = "product_" & Request.QueryString("id")
Fil = Filen & extension

pathEnd = Len(Server.mappath(Request.ServerVariables("PATH_INFO")))-14
Set MyFile = ScriptObject.CreateTextFile(Server.mappath("../products/" & Fil))

For i = 1 to LenB(value)
   MyFile.Write chr(AscB(MidB(value,i,1)))
Next

If filename <> "" Then
  Conn.Execute("Update shop_products Set picture='" & Fil & "',product='" & Product & "',descr='" & Descr & "',cat=" & Category & ",via_shop=" & Via_shop & ",artnr_1='" & Artnr_1 & "',artnr_2='" & Artnr_2 & "',artnr_3='" & Artnr_3 & "',artnr_4='" & Artnr_4 & "',artnr_5='" & Artnr_5 & "',utf_1='" & Utf_1 & "',utf_2='" & Utf_2 & "',utf_3='" & Utf_3 & "',utf_4='" & Utf_4 & "',utf_5='" & Utf_5 & "',ovrigt_1='" & Ovrigt_1 & "',ovrigt_2='" & Ovrigt_2 & "',ovrigt_3='" & Ovrigt_3 & "',ovrigt_4='" & Ovrigt_4 & "',ovrigt_5='" & Ovrigt_5 & "',price_1=" & Price_1 & ",price_2=" & Price_2 & ",price_3=" & Price_3 & ",price_4=" & Price_4 & ",price_5=" & Price_5 & " Where id=" & Request.QueryString("id"))
Else
  Conn.Execute("Update shop_products Set product='" & Product & "',descr='" & Descr & "',cat=" & Category & ",via_shop=" & Via_shop & ",artnr_1='" & Artnr_1 & "',artnr_2='" & Artnr_2 & "',artnr_3='" & Artnr_3 & "',artnr_4='" & Artnr_4 & "',artnr_5='" & Artnr_5 & "',utf_1='" & Utf_1 & "',utf_2='" & Utf_2 & "',utf_3='" & Utf_3 & "',utf_4='" & Utf_4 & "',utf_5='" & Utf_5 & "',ovrigt_1='" & Ovrigt_1 & "',ovrigt_2='" & Ovrigt_2 & "',ovrigt_3='" & Ovrigt_3 & "',ovrigt_4='" & Ovrigt_4 & "',ovrigt_5='" & Ovrigt_5 & "',price_1=" & Price_1 & ",price_2=" & Price_2 & ",price_3=" & Price_3 & ",price_4=" & Price_4 & ",price_5=" & Price_5 & " Where id=" & Request.QueryString("id"))
End If

MyFile.Close 

Response.Redirect "Products.asp"%>
<!--#Include file="../inc/function.asp"-->
solbulleMedlem sedan mars 20015 287 inlägg
#4

Och hur ser då sqlfrågan ut utskriven och ej körd?

response.write ("Update shop_products Set picture='" & Fil & "',product='" & Product & "',descr='" & Descr & "',cat=" & Category & ",via_shop=" & Via_shop & ",artnr_1='" & Artnr_1 & "',artnr_2='" & Artnr_2 & "',artnr_3='" & Artnr_3 & "',artnr_4='" & Artnr_4 & "',artnr_5='" & Artnr_5 & "',utf_1='" & Utf_1 & "',utf_2='" & Utf_2 & "',utf_3='" & Utf_3 & "',utf_4='" & Utf_4 & "',utf_5='" & Utf_5 & "',ovrigt_1='" & Ovrigt_1 & "',ovrigt_2='" & Ovrigt_2 & "',ovrigt_3='" & Ovrigt_3 & "',ovrigt_4='" & Ovrigt_4 & "',ovrigt_5='" & Ovrigt_5 & "',price_1=" & Price_1 & ",price_2=" & Price_2 & ",price_3=" & Price_3 & ",price_4=" & Price_4 & ",price_5=" & Price_5 & " Where id=" & Request.QueryString("id"))
LarsGMedlem sedan dec. 200012 464 inlägg
#5
If filename <> "" Then
  q = "Update shop_products Set picture='" & Fil & "',product='" & Product & "',descr='" & Descr & "',cat=" & Category & ",via_shop=" & Via_shop & ",artnr_1='" & Artnr_1 & "',artnr_2='" & Artnr_2 & "',artnr_3='" & Artnr_3 & "',artnr_4='" & Artnr_4 & "',artnr_5='" & Artnr_5 & "',utf_1='" & Utf_1 & "',utf_2='" & Utf_2 & "',utf_3='" & Utf_3 & "',utf_4='" & Utf_4 & "',utf_5='" & Utf_5 & "',ovrigt_1='" & Ovrigt_1 & "',ovrigt_2='" & Ovrigt_2 & "',ovrigt_3='" & Ovrigt_3 & "',ovrigt_4='" & Ovrigt_4 & "',ovrigt_5='" & Ovrigt_5 & "',price_1=" & Price_1 & ",price_2=" & Price_2 & ",price_3=" & Price_3 & ",price_4=" & Price_4 & ",price_5=" & Price_5 & " Where id=" & Request.QueryString("id")
Else
  q = "Update shop_products Set product='" & Product & "',descr='" & Descr & "',cat=" & Category & ",via_shop=" & Via_shop & ",artnr_1='" & Artnr_1 & "',artnr_2='" & Artnr_2 & "',artnr_3='" & Artnr_3 & "',artnr_4='" & Artnr_4 & "',artnr_5='" & Artnr_5 & "',utf_1='" & Utf_1 & "',utf_2='" & Utf_2 & "',utf_3='" & Utf_3 & "',utf_4='" & Utf_4 & "',utf_5='" & Utf_5 & "',ovrigt_1='" & Ovrigt_1 & "',ovrigt_2='" & Ovrigt_2 & "',ovrigt_3='" & Ovrigt_3 & "',ovrigt_4='" & Ovrigt_4 & "',ovrigt_5='" & Ovrigt_5 & "',price_1=" & Price_1 & ",price_2=" & Price_2 & ",price_3=" & Price_3 & ",price_4=" & Price_4 & ",price_5=" & Price_5 & " Where id=" & Request.QueryString("id")
End If
response.write "Debug: " & q 
response.end

Vad blir resultatet? Ser du något fel?

AsaMedlem sedan dec. 20011 860 inlägg
#6

Jag ser ings fel. Funkar ju prima när man skriver i all info.

SQL:

Debug: Update shop_products Set product='cxzvcv',descr='444',cat=2,via_shop=True,artnr_1='',artnr_2='',artnr_3='',artnr_4='',artnr_5='',utf_1='',utf_2='',utf_3='',utf_4='',utf_5='',ovrigt_1='',ovrigt_2='',ovrigt_3='',ovrigt_4='',ovrigt_5='',price_1=,price_2=,price_3=,price_4=,price_5= Where id=62

Databasen:
cat, price_1, price_2, price_3, price_4, price_5 är tal
via_shop är Ja/Nej
id är räknare och sedan är de andra text eller Pm.

LarsGMedlem sedan dec. 200012 464 inlägg
#7

Här saknas ett värde

price_5=

Du kan ju lägga ditt någon lämplig default

if price_5 = '' then price_5 = null 'eller 0 kanske?
AsaMedlem sedan dec. 20011 860 inlägg
#8

Hmm , ska testa och återkommer sen med resultat.

AsaMedlem sedan dec. 20011 860 inlägg
#9

Spelar ingen roll om jag sätter null. Fel iallafall.. Får nog sätta till 0 å kolla sen att om inte fältet är noll så ska den visas..

LarsGMedlem sedan dec. 200012 464 inlägg
#10

Lite virildemens från min sida

if price_5 = "" then price_5 = "null" 'eller 0 kanske?
AsaMedlem sedan dec. 20011 860 inlägg
#11

Det felet såg jag..

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