04. august 2005 - 20:33Der er
10 kommentarer og 1 løsning
Gavekort må kun bruges én gang
I indkøbsvognen indtastes en gavekortkode og et tjeknummer. Gavekortets værdi trækkes fra det samlede beløb og gavekortet sættes til 'brugt' i databasen, så det ikke kan bruges igen. Men hvis man efter at have indløst gavekortet, åbner en ny side med indkøbsvognen (fx ctrl+n i IE) så kan man bruge samme gavekort igen og igen (på separate ordre). Hvordan undgår man dette?
Det er det jeg gør med "og gavekortet sættes til 'brugt' i databasen". Eller brugt = true, om du vil. Problemet er at man kan åbne en 'kopi' af indkøbssiden med gavekort-rabatten...
hvis man kan det så er det jo fordi du ikke tjekker op imod din database hver gang rabatten skal udregnes Har du først sat den "brugt" så vil den jo blive fanget næste gang du slår op i databasen?
du må lave et felt til gavekort koden, og en knap til at godkende koden Ved klik på knappen postes siden til serveren som tjekker om koden er ok eller om den er brugt. Så er problemet væk
Hvis koden er blevet brugt, i.e. indtastet en gang, så kan den ikke bruges igen: sæt til 'brugt' og tjek på 'brugt' i db fungerer fint. Hvis koden ikke er blevet brugt før, så trækkes gavekortværdien fra et beløb(og koden sættes til brugt i db). Alt er fint. Men hvis man vælger 'nyt vindue' i browserens fil-menu, så viser det nye browservindue præcist den samme side - med gavekortbeløbet trukket fra. Det er jo samme session.
jeg vidste ikke at IE kunne gøre det med at åbne et vindue sådan, men firefox gør jo præcis det samme, og der er der altså ingen problemer ved sådan at tjekke op mod en database Om du så klikker ok præsic samtidig i begge vinduer, så vil den ene gå ind i databasen før den anden da databasen altid vil sætte forespørgsler til samme record i kø Derved vil den ene få adgang til at bestille, og den anden vil ikke Hvis altså du laver tjekket
Jeg tror problemet ligger i sekvensen. Det var meningen, at man skulle kunne indløse gavekortet og se det trukket fra i indkøbskurven og så checke varerne ud eller fortsætte med at handle. Men jeg kan ikke se hvordan man kommer udenom at der kan åbnes et nyt vindue, der også har det indløste gavekort trukket fra: et tjek på om gavekortet er brugt vil i begge vinduer (original som nyt) vise at det er brugt. Så vidt jeg kan se, så er der ikke noget der adskiller de 2 vinduer - samme bruger, session, gavekortkode. Eller hvad?
Hvis man nu ændre stedet for indtastning og tjek af gavekort til sidste trin i indkøbsprocessen, så kommer det til at forgå sammen med kreditkort tjek (ordren gennemføres) og der kan ikke åbnes et nyt vindue.
Jeg lægger som nævnt tjek af gavekort på sidste trin i indkøbsprocessen.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.