webForumDet fria alternativet

Felmeddelande

ASP

30 svar · 531 visningar · startad av Okkido

Medlem sedan maj 20007 492 inlägg
Frågan#1

Använder aspSmartUpload till en webbshop och när jag försöker lägga till en produkt i shopen får jag felet:

Microsoft VBScript runtime error '800a01b6'

Object doesn't support this property or method: 'mySmartUpload'

/admin/prod_add.asp, line 34

Koden ser ut så här i prod_add.asp:

<%
if Session("inloggad")<>"ja" then
response.write "<script language='javascript'>"
response.write "parent.top.location.href='../default.asp'"
response.write "</script>"
end if

if Request.QueryString("add")="ja" then

Set mySmartUpload = Server.CreateObject("aspSmartUpload.SmartUpload")

mySmartUpload.Upload

' markerades en fil?
Set File = mySmartUpload.Files("file")

filename=File.Filename

 ' annars spara (ÄNDRA SÖKVÄGEN HÄR)
  File.SaveAs "../../data/" & File.Filename
  Session("medelande")= "Filen sparades utan problem"

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath ("../../data/shop.mdb")
Set RecSet = Server.CreateObject("ADODB.Recordset")

' ##### Addar ny kategori och gör den till ett id (om den ska)

if mySmartUpload("katid")="nykat" then

strSQL = "INSERT INTO Kat ( Kategori ) VALUES( '"& mySmartUpload("kategorinamn") &"' )"
Conn.Execute(strSQL)

Set RecSet3=Server.CreateObject("ADODB.Recordset")
SQL="SELECT * From Kat WHERE Kategori='"& mySmartUpload("kategorinamn") &"'"
Set RecSet3 = Conn.Execute(SQL)
katid=RecSet3("KatID")

else

katid=mySmartUpload("katid")

end if

' ##### Addar ny produkttyp och gör den till ett id (om den ska)

if mySmartUpload("sortid")="nysort" then
strSQL = "INSERT INTO Sort ( Sort ) VALUES( '"& mySmartUpload("sortnamn") &"' )"
Conn.Execute(strSQL)

Set RecSet5=Server.CreateObject("ADODB.Recordset")
SQL="SELECT * From Sort WHERE Sort='"& mySmartUpload("sortnamn") &"'"
Set RecSet5 = Conn.Execute(SQL)
sortid=RecSet5("SortID")

else

sortid=mySmartUpload("sortid")

end if

strSQL = "INSERT INTO Prod ( KatID, SortID, ArtNr, Color, Size, Rubrik, Besk, Pris, Bildnamn ) VALUES( '"& katid &"', '"& sortid &"', '"& mySmartUpload("artnr") &"', '"& mySmartUpload("color") &"', '"& mySmartUpload("size") &"', '"& mySmartUpload("rubrik") &"', '"& mySmartUpload("besk") &"', '"& mySmartUpload("pris") &"', '"& filename &"' )"

Conn.Execute(strSQL)

Conn.Close
Set Conn=nothing

Response.Redirect("prod_add_ok.asp")
end if

%>

Tacksam för hjälp så snabbt som möjligt :)

Medlem sedan juni 200032 967 inlägg
#2
  1. [kod]-taggar, vännen! :)
  2. vilken rad pekar felet på?
  3. Vilken version av aspsmartupload använder du?

Mvh

Medlem sedan maj 20007 492 inlägg
#3
  1. va?
  2. line 34 ??
  3. Ingen aning

Inte jag som kodat något, men han som kodar är inte tillgänlig och jag har nu 18 min på mig att få shopen att fungera igen. :x

Medlem sedan juni 200032 967 inlägg
#4
  1. Använd wFs [kod] [ /kod]-taggar så koden blir lättare att läsa.
  2. Vilken är rad 34???
Medlem sedan maj 20007 492 inlägg
#5
  1. Uppfattat
  2. Jag kan noll om ASP men är det inte att räkna 34 rader ner?
Medlem sedan dec. 20003 887 inlägg
#6
<% 
if Session("inloggad")<>"ja" then 
    response.write "<script language='javascript'>" 
    response.write "parent.top.location.href='../default.asp'" 
    response.write "</script>" 
end if 

if Request.QueryString("add")="ja" then 

Set mySmartUpload = Server.CreateObject("aspSmartUpload.SmartUpload") 

mySmartUpload.Upload 

[blue]' markerades en fil?[/blue]
Set File = mySmartUpload.Files("file") 

filename=File.Filename 

[blue]' annars spara (ÄNDRA SÖKVÄGEN HÄR [/blue]
File.SaveAs "../../data/" & File.Filename 
Session("medelande")= "Filen sparades utan problem" 

Set Conn = Server.CreateObject("ADODB.Connection")
[b]Conn.Open "Provider=Microsoft.Jet.OleDB.4.0; Data Source=" & Server.MapPath("../../data/shop.mdb")[/b]
[blue]' Conn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath ("../../data/shop.mdb") [/blue]
Set RecSet = Server.CreateObject("ADODB.Recordset") 

[blue]' ##### Addar ny kategori och gör den till ett id (om den ska) [/blue]

if mySmartUpload("katid")="nykat" then 
    strSQL = "INSERT INTO Kat ( Kategori ) VALUES( '"& mySmartUpload("kategorinamn") &"' )" 
    Conn.Execute(strSQL) 

    Set RecSet3=Server.CreateObject("ADODB.Recordset") 
    SQL="SELECT * From Kat WHERE Kategori='"& mySmartUpload("kategorinamn") &"'" 
    Set RecSet3 = Conn.Execute(SQL) 
    katid=RecSet3("KatID") 
else 
    katid=mySmartUpload("katid") 
end if 

[blue]' ##### Addar ny produkttyp och gör den till ett id (om den ska) [/blue]
if mySmartUpload("sortid")="nysort" then 
    strSQL = "INSERT INTO Sort ( Sort ) VALUES( '"& mySmartUpload("sortnamn") &"' )" 
    Conn.Execute(strSQL) 

    Set RecSet5=Server.CreateObject("ADODB.Recordset") 
    SQL="SELECT * From Sort WHERE Sort='"& mySmartUpload("sortnamn") &"'" 
    Set RecSet5 = Conn.Execute(SQL) 
    sortid=RecSet5("SortID") 
else 
    sortid=mySmartUpload("sortid") 
end if 

strSQL = "INSERT INTO Prod ( KatID, SortID, ArtNr, Color, Size, Rubrik, Besk, Pris, Bildnamn ) " & _
"VALUES( '"& katid &"', '"& sortid &"', '"& mySmartUpload("artnr") &"', '"& mySmartUpload("color") &"', '"& _
 mySmartUpload("size") &"', '"& mySmartUpload("rubrik") &"', '"& mySmartUpload("besk") &"', '"& mySmartUpload("pris") &"', '"& filename &"' )" 

Conn.Execute(strSQL) 

Conn.Close 
Set Conn=nothing 

Response.Redirect("prod_add_ok.asp") 
end if 

%>
  1. Rad 34?
Medlem sedan juni 200032 967 inlägg
#7

Jo, om det framgår att det inte är någonting ovanför i asp-dokumentet...

Jag kommer till en tomrad när jag räknar, därför vore det bra om du själv markerade felraden. Jag tror dock att det är detta:

strSQL = "INSERT INTO Kat ( Kategori ) VALUES( '"& mySmartUpload[b].Form[/b]("kategorinamn") &"' )"

Prova att lägga till det fetmarkerade.

mvh

Medlem sedan dec. 20003 887 inlägg
#8

Om det är problemet bör det även vara

strSQL = "INSERT INTO Sort ( Sort ) VALUES( '"& mySmartUpload[b].Form[/b]("sortnamn") &"' )"

[i]och[/i]

SQL="SELECT * From Sort WHERE Sort='"& mySmartUpload[b].Form[/b]("sortnamn") &"'"

[i]och[/i]

strSQL = "INSERT INTO Prod ( KatID, SortID, ArtNr, Color, Size, Rubrik, Besk, Pris, Bildnamn ) " & _
"VALUES( '"& katid &"', '"& sortid &"', '"& mySmartUpload[b].Form[/b]("artnr") &"', '"& mySmartUpload[b].Form[/b]("color") &"', '"& _
 mySmartUpload[b].Form[/b]("size") &"', '"& mySmartUpload[b].Form[/b]("rubrik") &"', '"& mySmartUpload[b].Form[/b]("besk") & _
"', '"& mySmartUpload[b].Form[/b]("pris") &"', '"& filename &"' )"
Medlem sedan maj 20007 492 inlägg
#9

Testade att lägga till Form, ingen ändring på felmeddelandet.

Medlem sedan dec. 20003 887 inlägg
#10

Kan du inte ta och kolla i koden vilken rad som är rad 34? Det skulle underlätta.

Medlem sedan aug. 20002 272 inlägg
#11
  1. Jag kan noll om ASP men är det inte att räkna 34 rader ner?

1. Varför har du fått i uppgift att fixa detta då?
2. Kör du lokalt eller mot webservern sidan ligger på?
3. Vad står det på rad34?

Medlem sedan maj 20007 492 inlägg
#12

Koden börjar av det jag klistrade in så när jag räknar neråt så jag får det till att denna raden är rad 34:

if mySmartUpload("katid")="nykat" then
Medlem sedan dec. 20003 887 inlägg
#13

testa använda

If mySmartUpload[b].Form[/b]("katid") = "nykat" Then

Jag spinner bara vidare på snabelanders förslag nu...

Medlem sedan juni 200032 967 inlägg
#14

Lägg till .Form på de ställen där det saknas, för jag antar att det är det som menas...

Mvh,

Medlem sedan maj 20007 492 inlägg
#15

JareMANNEN

Han som har byggt shoppen är inte tillgänglig och det är viktigt att shoppen kommer upp idag därför sitter jag och försöker hitta någon lösning, med hjälp av er goa gubbar :)

Medlem sedan maj 20007 492 inlägg
#16

.Form ska in på alla ställen där mySmartUpload står?

Även på dem där det står aspSmartUpload.

Medlem sedan juni 200032 967 inlägg
#17

Bara på de ställen där det står mySmartUpload("någonting").
Alltså inte där någon annan metod på mySmartUpload kallas på.

mvh

Medlem sedan maj 20007 492 inlägg
#18
<%
if Session("inloggad")<>"ja" then 
response.write "<script language='javascript'>"
response.write "parent.top.location.href='../default.asp'"
response.write "</script>"
end if

if Request.QueryString("add")="ja" then
 
Set mySmartUpload = Server.CreateObject("aspSmartUpload.SmartUpload")

mySmartUpload.Upload

' markerades en fil?
Set File = mySmartUpload.Files("file")

filename=File.Filename

     ' annars spara (ÄNDRA SÖKVÄGEN HÄR)
      File.SaveAs "../../data/" & File.Filename
      Session("medelande")= "Filen sparades utan problem"

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath ("../../data/shop.mdb")
Set RecSet = Server.CreateObject("ADODB.Recordset")

' ##### Addar ny kategori och gör den till ett id (om den ska)

if mySmartUpload("katid")="nykat" then

strSQL = "INSERT INTO Kat ( Kategori ) VALUES( '"& mySmartUpload.Form("kategorinamn") &"' )"
Conn.Execute(strSQL)

Set RecSet3=Server.CreateObject("ADODB.Recordset")
SQL="SELECT * From Kat WHERE Kategori='"& mySmartUpload.Form("kategorinamn") &"'"
Set RecSet3 = Conn.Execute(SQL)
katid=RecSet3("KatID")

else

katid=mySmartUpload("katid")

end if

' ##### Addar ny produkttyp och gör den till ett id (om den ska)

if mySmartUpload("sortid")="nysort" then
strSQL = "INSERT INTO Sort ( Sort ) VALUES( '"& mySmartUpload.Form("sortnamn") &"' )"
Conn.Execute(strSQL)

Set RecSet5=Server.CreateObject("ADODB.Recordset")
SQL="SELECT * From Sort WHERE Sort='"& mySmartUpload.Form("sortnamn") &"'"
Set RecSet5 = Conn.Execute(SQL)
sortid=RecSet5("SortID")

else

sortid=mySmartUpload("sortid")

end if

strSQL = "INSERT INTO Prod ( KatID, SortID, ArtNr, Color, Size, Rubrik, Besk, Pris, Bildnamn ) VALUES( '"& katid 

&"', '"& sortid &"', '"& mySmartUpload.Form("artnr") &"', '"& mySmartUpload,Form("color") &"', '"& 

mySmartUpload,Form("size") &"', '"& mySmartUpload.Form("rubrik") &"', '"& mySmartUpload.Form("besk") &"', '"& 

mySmartUpload.Form("pris") &"', '"& filename &"' )"

Conn.Execute(strSQL)

Conn.Close
Set Conn=nothing

Response.Redirect("prod_add_ok.asp")
end if

%>

Sidan har förresten funkat när han som byggt den körde den lokalt.

Medlem sedan juni 200032 967 inlägg
#19

Det är ju möjligt att han kör en annan version än den som ligger på servern?

Prova att lägga till .Form på de som saknas.

mvh,

Medlem sedan maj 20007 492 inlägg
#20

Får fel på denna raden nu (Rad 75)

strSQL = "INSERT INTO Prod ( KatID, SortID, ArtNr, Color, Size, Rubrik, Besk, Pris, Bildnamn ) VALUES( '"& katid &"', '"& sortid &"', '"& mySmartUpload.Form("artnr") &"', '"& mySmartUpload,Form("color") &"', '"& mySmartUpload,Form("size") &"', '"& mySmartUpload.Form("rubrik") &"', '"& mySmartUpload.Form("besk") &"', '"& mySmartUpload.Form("pris") &"', '"& filename &"' )"
298 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
128 ms — deklarationer (db)
0 ms — hämta statistik (cache)
167 ms — hämta tråd, inlägg och bilagor (db)
120 ms — ändringar (db)