Toon posts:

[ASP] Moduleren van bestel modus

Pagina: 1
Acties:
  • 155 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Ik ben bezig met bouwen van een web-site waarop klanten online kunnen bestellen. Ik heb daarvoor al gemaakt o.a. MS Acces database met daarin benodigde tabellen enz. Ook heb ik al een online catalogus met daarin de artikelen uit de database. Hetgeen wat nu niet wil lukken is het contrueren van een handige bestelmodus.

Ik wil graag dat klanten vanuit de catalogus een paar artikelen kunnen selecteren / aanvinken en vervolgens op bestel drukken zodoende een overzicht krijgen van de bestelde artikelen. En vervolgens moeten ze verder kunnen gaan met bevestigen.

Ik heb ondertussen al begrepen dat men hiervoor met session variabele werkt, nu heb ik daar te weinig kennis van om dat te gebruiken hiervoor, daarom gaarne wat tips en dergelijk hoe ik deze verwerk in me site. Hieronder tref je me ASP gedeelte aan waarmee de klanten kunnen selecteren / aanvinken wat ze willen. Ik kan evt. nog meerdere delen van me site hier posten als je dat nodig denk te hebben.

<%
Dim conArtikel, rstArtikel, dir

dir = Request.ServerVariables ("APPL_PHYSICAL_PATH")

Set conArtikel = Server.CreateObject("ADODB.Connection")
conArtikel.Open "Data Source=D:\InetPub\wwwroot\webdir\1i3/1034355/qwesty.mdb; Provider=Microsoft.Jet.OLEDB.4.0;"

Set rstArtikel = Server.CreateObject("ADODB.Recordset")
rstArtikel.Open "Artikel", conArtikel, 2, 2

do while rstArtikel.EOF = false
Response.Write("<TR><TD>" & rstArtikel("art_nr") & "</TD>" )
Response.Write("<TD>"& rstArtikel("omschrv") & "</TD>" )
Response.Write("<TD>"& rstArtikel("BTW") & " </TD>" )
Response.Write("<TD>"& "€ " & rstArtikel("prijs") & "</TD>")
%><TD><INPUT type="checkbox" id=checkbox1 name=chkbestel></TD></TR><%
rstArtikel.movenext
loop

rstArtikel.Close
conArtikel.Close
%>

  • 4of9
  • Registratie: Maart 2000
  • Laatst online: 15-04 15:52
een sessie werkt bijna hetzelfde als een cookie.

Je kunt een sessie heel simel vullen door bijv.

code:
1
myVar = Session("sessienaam")


maar is het niet makkelijker om bestelde items in een tabel op te slaan in je database?
dan kunnen de mensen zelfs als ze later terug komen nog hun bestelling aanpassen wijzigen etc.?

[ Voor 0% gewijzigd door 4of9 op 29-08-2002 11:57 . Reden: prutser ]

Aspirant Got Pappa Lid | De toekomst is niet meer wat het geweest is...


Verwijderd

Topicstarter
ja ik heb een tabel order en orderregels, het is de bedoeling dat daarin de orders worden opgeslagen. Maar het probleem voor mij is, hoe ik die geselecteerde items ook daadwerkelijk in de tabellen krijg.

Ik kom niet verder dan:

If chkBestel is True Then { en hierzo moet je dus de juiste recordset ( artikel-info ) kunnen aanspreken en vervolgens kunnen opslaan in de order tabel.

  • zneek
  • Registratie: Augustus 2001
  • Laatst online: 08-02-2025
4of9 schreef op 29 augustus 2002 @ 11:56:
een sessie werkt bijna hetzelfde als een cookie.

Je kunt een sessie heel simel vullen door bijv.

code:
1
myVar = Session("sessienaam")


maar is het niet makkelijker om bestelde items in een tabel op te slaan in je database?
dan kunnen de mensen zelfs als ze later terug komen nog hun bestelling aanpassen wijzigen etc.?
Uh, je bedoeld:

code:
1
Session("sessienaam") = myVar


?? De waarde weer uit de sessie lezen gaat zoals jij schreef.

  • zneek
  • Registratie: Augustus 2001
  • Laatst online: 08-02-2025
Verwijderd schreef op 29 augustus 2002 @ 12:06:
ja ik heb een tabel order en orderregels, het is de bedoeling dat daarin de orders worden opgeslagen. Maar het probleem voor mij is, hoe ik die geselecteerde items ook daadwerkelijk in de tabellen krijg.

Ik kom niet verder dan:

If chkBestel is True Then { en hierzo moet je dus de juiste recordset ( artikel-info ) kunnen aanspreken en vervolgens kunnen opslaan in de order tabel.
Je zou de order(regel) direct kunnen vullen als iemand 1 artikel toevoegt. Maar, de order markeren als voorlopig. Pas als de klant 'echt' wil bestellen de order definitief maken. Wel er voor zorgen dat de voorlopige orders af en toe uit de db gekicked worden.

Verwijderd

Topicstarter
ja ik denk dat dat het is ja.

Je hebt dus een een chkbox aangevinkt ( = True ) en vervolgens op bestel ( submit ) gedrukt.

Nu moet je dus weer gaan opvragen welke chkbox is aangevinkt , en welke waarden die recordset bevat.

Session ("bestel") = ......( moet hier dan te komen staan om welke chkbox het gaat?

Nog iets anders, ik gebruik een lus om zodoende alle recordsets van chkboxen te voorzien. Betekent dit ook dat iedere chkbox dezelfde ID heeft, en dat je dus geen aparte chkbox voor iedere aparte recordset heb? want als dat zo is werkt dit systeem niet goed, dan zou ik dat anders moeten oplossen, enige suggestie?

  • 4of9
  • Registratie: Maart 2000
  • Laatst online: 15-04 15:52
zneek schreef op 29 augustus 2002 @ 12:13:
[...]


Uh, je bedoeld:

code:
1
Session("sessienaam") = myVar


?? De waarde weer uit de sessie lezen gaat zoals jij schreef.
hmm damn ik ben echt aan het prutsen laatste paar reacties :/

Aspirant Got Pappa Lid | De toekomst is niet meer wat het geweest is...


Verwijderd

Topicstarter
eh ja het word me niet echt duidelijker zo, maare misschien zo dan:

Ik weet dus wel met session variabelen te werken ( tot een bepaald niveau ) maar in dit geval moet je dus met meerdere variabelen binnen die session gaan werken. Misschien dat he nu wat duidelijker word?

  • 4of9
  • Registratie: Maart 2000
  • Laatst online: 15-04 15:52
kijk eens hier daar staan veel goede voorbeelden en faq's.

Aspirant Got Pappa Lid | De toekomst is niet meer wat het geweest is...


  • .GoO
  • Registratie: September 2001
  • Laatst online: 26-08 10:06
laat maar :(

  • zneek
  • Registratie: Augustus 2001
  • Laatst online: 08-02-2025
Wat snap je niet dan? Hoe ASP werkt? Hoe Sessies in ASP werken? Hoe je een shop in elkaar programmeert?

Als ik kijk naar je post waarin je uitlegt hoe de artikelen getoond worden ben je er al bijna. Je moet alleen nog uitdokteren hoe je die waarden uit dat formulier bewaart in een Sessie en opslaat wanneer de gebruiker op de bestel knop klikt, right?

Dan moet je eens uitproberen welke waarde je terug krijgt als je een checkbox form waarde request. Wanneer de checkbox aangevinkt is krijg je via request("checkboxvar") de door jou gespecificeerde value terug. Bijv:
code:
1
<input type=checkbox name=chk1 value=waarde>


Dit is een checkbox, opvragen of de checkbox aangevinkt is in de afhandelende ASP gaat als volgt:
code:
1
2
3
4
5
6
chkvar = request("chk1")
if isNull(chkvar) or chkvar="" then
 ' Niet aangevinkt
else
 ' Wel aangevinkt
end if


Ik stop die waarde nu in een normale var, maar daar kun je ook een Session("var") van maken.

  • zneek
  • Registratie: Augustus 2001
  • Laatst online: 08-02-2025
Ik zou zelf een 2 dimensionaal array gebruiken. Artikel id en aantal opslaan. Bij toevoegen artikel controleren of artikel id al in de array staat. Zo ja, dan aantal ophogen, zo nee, aan array toevoegen.
Pagina: 1