[ASP] Array Substing out of range

Pagina: 1
Acties:
  • 55 views sinds 30-01-2008

  • Tweak-a-holic
  • Registratie: December 2002
  • Laatst online: 08-03-2023
Ik ben bezig om een soort van tijdelijk winkelwagentje te maken waarin alles word bijgehouden nou wou ik dit doen door de gegevens bij te houden in een sessie variabel. Dit gaat allemaal wel goed.

Als ik de regel opvraag van het sessie variabel dan krijg ik 33235,1|23424,2| etc.

Het probleem kom alleen bij het laatste stukje code waar ik het artikel wil splitten van het aantal. En deze vervolgens in een array variabel wil hebben.

code:
1
2
3
4
5
6
7
For each i in spliting
dim Myarray

myarray = Split(i, ",")
Response.write "<br>Product ID= " & myarray(0) & "Aantal= " & myarray(1) 
response.write"<br>"
next


Hij geeft de foutmelding "Subscript out of range: '[number: 0]'" Wat doe ik hier nu fout, weet dat mijn array out of range is geraakt maar hoe kan ik dit oplossen?


De complete code van de pagina staat hieronder
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<%
Dim Artikel, Aantal
Artikel = request.QueryString("artikel")
Aantal = request.QueryString("aantal")

IF NOT artikel = "" THEN

session("winkelwagen") = session("winkelwagen") & Artikel & "," & aantal & "|"

END IF

Response.write session("winkelwagen")

inkar = session("winkelwagen")

spliting = Split(inkar, "|")

For each i in spliting
dim Myarray

myarray = Split(i, ",")
Response.write "<br>Product ID= " & myarray(0) & "Aantal= " & myarray(1) 
response.write"<br>"
next  
%>

I just wanna make fake love to you...


  • mOrPhie
  • Registratie: September 2000
  • Laatst online: 20-08 15:04

mOrPhie

❤️❤️❤️❤️🤍

Dit is eigenlijk gewoon debug-werk. Het kan zijn dat je bijvoorbeeld in een splitting-item een lege array hebt zitten? Of dat myarray leeg is. Test en debug het 'ns met "isempty" zou ik zeggen. :)

[ Voor 26% gewijzigd door mOrPhie op 06-08-2003 09:49 ]

Een experimentele community-site: https://technobabblenerdtalk.nl/. DM voor invite code.


  • Tweak-a-holic
  • Registratie: December 2002
  • Laatst online: 08-03-2023
Als ik door de myarray heen "for each" dan krijg ik wel alle waardes. Maar als i is gesplit komen er 2 waarden uit.

Ik moet de eerste waarde gebruiken voor een SQL statement en de tweede voor het aantal dat er van dat product is besteld.

Maar ik weet niet hoe ik nu precies de 1ste of 2de waarde aanspreek.

I just wanna make fake love to you...


  • mOrPhie
  • Registratie: September 2000
  • Laatst online: 20-08 15:04

mOrPhie

❤️❤️❤️❤️🤍

Tweak-a-holic schreef op 06 August 2003 @ 09:59:
Maar ik weet niet hoe ik nu precies de 1ste of 2de waarde aanspreek.
Op zich is ASP altijd zero-based. Maar als je het zeker wilt weten kun je lbound (laagste index) en ubound (hoogste index) gebruiken om dit te testen.

Als "inkar' trouwens eindigd op een "|", dan zal je laatste array-item in "spliting" leeg zijn. En zal dat direct ook het item zijn, waar de split op een komma niks uithaald en het loopje op z'n gat gaat. Haal de laatste "|" er dus 'ns vanaf.

Een experimentele community-site: https://technobabblenerdtalk.nl/. DM voor invite code.


  • Tweak-a-holic
  • Registratie: December 2002
  • Laatst online: 08-03-2023
Je hebt gelijk hij gaat op z'n bek bij de laatste "|"

Weet je toevallig ook hoe ik na het ophalen van het sessie variabel, het laatste teken kan verwijderen?

[ Voor 54% gewijzigd door Tweak-a-holic op 06-08-2003 10:09 ]

I just wanna make fake love to you...


  • Gert
  • Registratie: Juni 1999
  • Laatst online: 05-12-2025
Ja, maar dat zou je ook weten als je even verder zocht. Je wilt iets aan de rechterkant er af knippen.

Zover ik weet kan je ook arrays in een sessie stoppen dus waarom doe je dat niet gewoon? :)

  • Tweak-a-holic
  • Registratie: December 2002
  • Laatst online: 08-03-2023
ja weet ik maar jah.. Ga nu ff uitzoeken hoe het laatste teken eraf te halen.

I just wanna make fake love to you...


  • justmental
  • Registratie: April 2000
  • Niet online

justmental

my heart, the beat

Tweak-a-holic schreef op 06 augustus 2003 @ 10:07:
Je hebt gelijk hij gaat op z'n bek bij de laatste "|"

Weet je toevallig ook hoe ik na het ophalen van het sessie variabel, het laatste teken kan verwijderen?
zoiets:
knippen(string,1,lengte(string)-1)
Dit wordt wel heel basic, kijk eens in een manual bij de string functies van je programmeertaal.

Who is John Galt?

Pagina: 1

Dit topic is gesloten.