Toon posts:

[ASP]Cookie check werkt niet

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hoi,

Ik wil kijken of een cookie bestaat voordat er doorgegaan word met de rest van de code.

ASP:
1
2
3
4
5
Dim productcookie
if Request.Cookies(productaantalquery("productnr"))("productid")<> "" then

productcookie= Request.Cookies(productaantalquery("productnr"))("productid")
end if


productaantalquery("productnr") is een resultaat uit een database dat steeds opgehoogt word ( naar de volgende regel gaat, waar een hoger getal staat)
Op een gegeven moment is dat zo hoog dat het cookie niet meer bestaat.
Er word namelijk voor elk product een cookie aangemaakt met als naam het productnr.

ik krijg dan de foutmelding:

Request object error 'ASP 0105 : 80004005'
Index out of range

/prototype_frames/producten/winkelprodtoevoeg.asp, line 79

An array index is out of range.

line 79 is :
code:
1
if Request.Cookies(productaantalquery("productnr"))("productid")<> "" then

Ik heb ook al geprobeerd:
code:
1
if not Request.Cookies(productaantalquery("productnr"))("productid") is nothing then

maar dan krijg ik de volgende error:
Microsoft VBScript runtime error '800a01a8'
Object required

/prototype_frames/producten/winkelprodtoevoeg.asp, line 79


Die eerste foutmelding kan ik nog wel begrijpen, omdatie eerst checkt of die cookie wel bestaat en dan pas de if statement uitvoert ( althans dat denk ik). Die 2e mag dus niet omdat het resultaat van de request geen Object is. Maar dat is dus juist het probleem, ik kan er geen Object van maken. Als ik namelijk het hele if statement weg haal krijg ik weer die "An array index is out of range. "error.


Is er iemand die hier wat mee kan?

[ Voor 8% gewijzigd door Verwijderd op 12-12-2003 12:28 ]


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 13:28

gorgi_19

Kruimeltjes zijn weer op :9

ASP:
1
if Request.Cookies(productaantalquery("productnr")) Is Nothing Then

of
ASP:
1
if Request.Cookies(productaantalquery("productnr")) = "" Then

Moet je eens mee gaan spelen.

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Verwijderd

Topicstarter
hmm ik heb nu dit:

ASP.NET Visual Basic:
1
2
3
4
Dim productcookie
    productcookie =Request.Cookies(productaantalquery("productnr"))
    if not productcookie is nothing Then
    productcookie= Request.Cookies(productaantalquery("productnr"))("productid")


Het gekke is dat nogsteeds zegt:
Microsoft VBScript runtime error '800a01a8'
Object required

/prototype_frames/Producten/winkelprodtoevoeg.asp, line 79 (= line 3)
Terwijl productcookie (line 79, line 3) nu toch een Object is?

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 13:28

gorgi_19

Kruimeltjes zijn weer op :9

ASP:
1
2
3
4
Dim productcookie
if not Request.Cookies(productaantalquery("productnr")) is nothing Then
    productcookie= Request.Cookies(productaantalquery("productnr"))("productid")
End if

In jouw query zou je hem moeten aanpassen naar
ASP:
1
2
3
4
Dim productcookie
productcookie =Request.Cookies(productaantalquery("productnr"))
if not productcookie = "" Then
productcookie= Request.Cookies(productaantalquery("productnr"))("productid")

Aangezien productcookie in jouw voorbeeld geen object is. VBScript is een beetje vaag daarin.

ASP is al weer een hele tijd terug voor mij; weet het niet meer precies.. :P

[ Voor 15% gewijzigd door gorgi_19 op 12-12-2003 12:57 ]

Digitaal onderwijsmateriaal, leermateriaal voor hbo