Heeey,
Even kort een situatieschets van waar ik mee zit:
Momenteel ben ik druk bezig met het bouwen van een online bestelsysteem. Hiervoor gebruik ik een file genaamd 'categorien.asp' die ik heb aangemaakt waarin een combobox staat met de verschillende product categorieën en er verschijnt na selectie een lijst met producten.
Achter elk product kan de gebruiker een aantal invullen en achter elk product staat ook een 'bestel' knop. D.m.v. de bestelknoppen komt alles waar een ander getal dan 0 is ingevoerd, in je winkelwagen. Dus het is eigenlijk hetzelfde als bovenaan de lijst 1 bestelknop maken die de hele lijst stuurt naar de winkelwagen (dit is echter niet wat ik wil).
Het probleem is nu dat de VB loop niet goed werkt. Als ik bijvoorbeeld in 'n categorie maar twee producten heb zitten, dan werkt de 2e bestelknop niet. Ook op andere momenten geeft de foutmelding aan (als ik op de 4e knop bijvoorbeeld druk) dat ik op de 6e heb gedrukt. Dit is voor mij erg vaag.
de betreffende foutmelding:
http://www.pumpkinhf.nl/foutmelding.jpg
De code:
Er zit iig iets duidelijk fout in de 'bestellen.aantal x' loop.
Hopelijk is dit duidelijk genoeg om er iets mee te kunnen!
Alvast bedankt
Even kort een situatieschets van waar ik mee zit:
Momenteel ben ik druk bezig met het bouwen van een online bestelsysteem. Hiervoor gebruik ik een file genaamd 'categorien.asp' die ik heb aangemaakt waarin een combobox staat met de verschillende product categorieën en er verschijnt na selectie een lijst met producten.
Achter elk product kan de gebruiker een aantal invullen en achter elk product staat ook een 'bestel' knop. D.m.v. de bestelknoppen komt alles waar een ander getal dan 0 is ingevoerd, in je winkelwagen. Dus het is eigenlijk hetzelfde als bovenaan de lijst 1 bestelknop maken die de hele lijst stuurt naar de winkelwagen (dit is echter niet wat ik wil).
Het probleem is nu dat de VB loop niet goed werkt. Als ik bijvoorbeeld in 'n categorie maar twee producten heb zitten, dan werkt de 2e bestelknop niet. Ook op andere momenten geeft de foutmelding aan (als ik op de 4e knop bijvoorbeeld druk) dat ik op de 6e heb gedrukt. Dit is voor mij erg vaag.
de betreffende foutmelding:
http://www.pumpkinhf.nl/foutmelding.jpg
De code:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| <form name="bestellen" method="post" action="temp.asp?action=ins">
<table width="100%" border="0" cellspacing="0" cellpadding="3">
<tr>
<td width="74"> </td>
<th width="74">Prijs</td>
<th width="100%"><div align="left">Omschrijving</div></td>
<th width="74"><div align="center">Aantal</div></td>
<td width="74"> </td>
</tr>
<% Call recordset.MoveFirst ()
While Not recordset.EOF %>
<tr>
<td>
<% foto = recordset("foto") %>
[img]"<%[/img]"></td>
<td><b> € <%= formatnumber(recordset("Prijs"),2) %></b></td>
<td onclick="window.open('popup.asp?Naam=<%=recordset ("Naam")%>','Omschrijving','width=480,height=265');" OnMouseOver="this.style.cursor='hand'"><b> |
ASP.NET Visual Basic:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
| <% Naamvol = Recordset ("Naam") If len(Naamvol) > 25 then n = true Naamkort = left(Naamvol,25) Else n = false Naamkort = Recordset("Naam") End if %> <% Omschrijvingvol = Recordset ("Omschrijving") If len(Omschrijvingvol) > 32 then o = true Omschrijvingkort = left(Omschrijvingvol,32) Else o = false Omschrijvingkort = Recordset("Omschrijving") End if %> <% Response.write(Naamkort) %><% if n = true then %>... <% else end if %></b></a><br> <% Response.write(Omschrijvingkort) %><% if o = true then %>... <% else end if %> |
code:
1
2
3
4
5
6
7
8
9
10
| <input type="hidden" name="<% response.Write("Naam" & iteller) %>" value="<%=recordset ("Naam") %>">
<input type="hidden" name="<% response.Write("omschrijving" & iteller) %>" value="<%=recordset ("Omschrijving") %>">
<input type="hidden" name="<% response.Write("artikelcode" & iteller) %>" value="<%=recordset ("Artikelcode") %>">
<input type="hidden" name="<% response.Write("Prijs" & iteller) %>" value="<%=recordset ("Prijs") %>">
<br><hr size="1"></td>
<td>
<div align="center">
<input class="form" tabindex="<% response.write( 1 + iteller) %>" name="<% response.write("aantal" & iteller) %>" type="textbox" maxlength="3" size="1" value="0"></div></td>
<td><input class="form" id="button" tabindex="<% response.write( 2 + iteller) %>" type="button" name="btnBestellen<% response.write(iteller) %>" value="Bestel" OnMouseOver="this.style.cursor='hand'"></td>
</tr> |
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
26
27
| <script language="VBScript">
<!--
Sub btnBestellen<% response.write(iteller) %>_OnClick()
dim i
dim ok
dim foutnummer
ok = true
for i=0 to (<% response.Write(iteller) %>+<% response.Write(iteller) %>)
if not IsNumeric(Eval("document.bestellen.aantal"&i&".value")) then
if not ((Eval("document.bestellen.aantal"&i&".value"))="") then
ok = false
foutnummer = i
end if
End If
next
if not ok then
MsgBox "Foutieve invoer bij artikel " & (foutnummer + 1),vbExclamation
eval("document.all.aantal"&foutnummer&".focus")
else
document.bestellen.submit
end if
end sub
-->
</script> |
ASP.NET Visual Basic:
1
2
3
| <% iteller = iteller + 1 Call recordset.MoveNext() Wend %> |
code:
1
2
3
4
5
6
7
8
| <tr>
<td colspan="6"> </td>
</tr>
</table>
<input type="hidden" name="teller" value="<% response.write(iteller) %>">
<input type="hidden" name="reqcategorie" value="<%=request ("categorie")%>">
<br>
</form> |
Er zit iig iets duidelijk fout in de 'bestellen.aantal x' loop.
Hopelijk is dit duidelijk genoeg om er iets mee te kunnen!
Alvast bedankt