Vraag & Antwoord

Webprogrammeren & scripting

[asp/VBscript] Type mismatch probleem

1 antwoord
  • Ik ben bezig voor mijn stage een winkelwagensysteem aan te passen van een vorige stageloper. Hierbij worden de te verkopen items opgehaald uit msaccess en in een lijst geplaatst, waarna de bezoeker op bestel kan klikken, waarna het betreffende item in de winkelwagen zou moeten komen. Zodra echter op 'bestel' wordt geklikt, komt er de volgende error op het scherm: [quote:a3bce5074f] Microsoft VBScript runtime error '800a000d' Type mismatch /shopbasket/addprod.asp, line 35 [/quote:a3bce5074f] Hoe kan deze error zijn ontstaan? Kan het zijn dat er ergens een bestand/gegevens uit de database zijn verwijderd, aangezien de code schijnt te hebben gewerkt op het moment dat de vorige stageloper wegging en er sindsdien niemand meer aan de code schijnt te hebben gezeten. De gegevens: De bezoeker komt via catagories/subcatagories/products.asp bij addprod.asp waarna er een item in de winkelwagen moet komen en er de totaalprijs-eventuele kortingen op het scherm komt. De (gedeeltelijke)code is in dit bestand als volgt: [code:1:a3bce5074f] Dim prodid, quantity, arrCart, metacartItem, klant, cproducttype prodid = Request.Form("fproductid") quantity = Request.Form("fquantity") arrCart = Session("MyCart") metacartItem = Session("cartItem") klant = Session("klant") If prodid <> "" Then If metacartItem < maxCartItems Then metacartItem = metacartItem + 1 End If Session("cartItem") = metacartItem Dim rsItem Set rsItem = Server.CreateObject("ADODB.Recordset") rsItem.Open "products", dbc, adOpenForwardOnly,adLockReadOnly,adCmdTable rsItem.Filter = "productID = " & prodid If Not rsItem.EOF Then >>r35<< arrCart(cProductid,metacartItem) = rsItem("productID") arrCart(cProductCode,metacartItem) = rsItem("productcode") arrCart(cProductname,metacartItem) = rsItem("productname") arrCart(cProducttype,metacartitem) = rsItem("producttype") arrCart(cQuantity,metacartItem) = CInt(quantity) arrCart(cUnitPrice,metacartItem) = rsItem("price") Session("MyCart") = arrCart rsItem.Close End If Else [/code:1:a3bce5074f] De rest van de code is (dacht ik) niet zo interessant, omdat de foutenafhandeling na regel 35 wordt gestopt. Dit bestand heeft als 'include' db.asp De variabelen hebben hierbij de volgende waardes: (d.m.v. Response.Write) [quote:a3bce5074f] cproductid:1 (eerste item uit lijst items welke kunnen worden besteld) metacartItem:9 (aantal keer dat er een item naar de winkelwagen wordt verzonden = maximaal 10 (aangegeven in db.asp)) prodid:24597 (itemnummer uit database) arrCart: (geen waarde) Session("MyCart"): (geen waarde) rsItem("productID"):24597 (itemnummer uit database) arrCart(cProductid,metacartItem): (geeft een error) [/quote:a3bce5074f] Ik hoop dat iemand me hierbij kan helpen, aangezien ik er niet zo via google/msdn.microsoft.com achter kon komen. Als er meer code moet komen, stuur ik dat graag.

Beantwoord deze vraag

Weet jij het antwoord op deze vraag? Registreer of meld je aan met je account

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.