Konkatenera.
strID = Request.Querystring("ID")
If Session("ID") = "" Then Session("ID") = strID Else Session("ID") = Session("ID") & "," & strID
mvh
10 svar · 543 visningar · startad av jvc_man
Hej!
Jag håller på men en hemsida som skall vara en internet shop. Allt är färdigt förutom varukorgen, dvs menyer m.m. samt lister med saker samt bilder funkar. Om man klickar på "Lägg i varukorg" som finnes intill varje föremål så lagras deras "ID" i Session("ID").
Dock tänkte jag, om de lägger till flera föremål / "ID" i sin varukorg, då skrivs ju Session("ID") över...
Skulle någon vilja tipsa mig hur jag skall tänka samt gå till väga när jag ska skapa en varukorg / webshop.
Man ska kunna lägga flera varor i sin varukorg och när man går till kassan skall alla uppgifter kunna visas (det går om man har sparat alla ID)...
Hoppas någon vill tipsa och hjälpa mig...
Mvh Björn Mattsson :)
Konkatenera.
strID = Request.Querystring("ID")
If Session("ID") = "" Then Session("ID") = strID Else Session("ID") = Session("ID") & "," & strID
mvh
Hmm, jo, det skulle nog funka, tack!
Behöver dock hjälp med:
Hur skall jag sedan få fram varje enskilld siffra så att jag kan hämta faktan som gäller för det specifika ID-numret / siffran ?
Inga andra tips eller?
_________________________________________________
Andra är självfallet välkommna att ge fler tips!
jvc_man skrev:
Hur skall jag sedan få fram varje enskilld siffra så att jag kan hämta faktan som gäller för det specifika ID-numret / siffran ?
Använd Split() för att sedan dela upp den kommaseparerade listan till en array, eller, om det bara handlar om att hämta information från databas kan du ju bara ställa en SQL-fråga som denna:
strSQL = "SELECT * FROM produkter WHERE ID IN(" & Session("ID") & ")"
Mvh
Okey.
Så, om någon klicka på lägg till i kundvagnen, så läggs produktens ID-nummer till i en Session("prodID") och om han klickar på en produkt till så läggs det ytterligare till ett ID-nummer i Session("prodID") och sedan efter han känner sig nöjd och klickar på "gå till kassan" så hämtar man alla ID-nycklarna i Session("prodID") via Split(). Och när man hämtar dem, var för sig så kan man plocka ut den fakta man behöver ur databasen och utföra beräkningar med pris etc. samt presentera hans köp... !?
Hur använder jag Split() så att jag får ut det första ID-numret i ex. ProdID och sedan kan använda det, för att sedan hämta nästa ID medhjälp av Spit() , kanske dum fråga, men ändå...
Läste dessutom en annan (tidigare) tråd angående varukorgar, och de vart väldigt inne på att använda sig av databasen, en temporär tabell.
Detta förstår jag inte anledningen till, om man nu kan använda sig utav Session istället och sedan skicka över kundens order till en databas tabell som hanterar beställningarn...
Hoppas du kan hjälpa mig ytterligare...
Mvh Björn Mattsson
Hmm, läs detta som OveRRidE har skrivit..., han börjar med Hoppla efter sitt citat!
http://www.webforum.nu/showthread.php?s=&postid=444185#post444185
jvc_man skrev:
Så, om någon klicka på lägg till i kundvagnen, så läggs produktens ID-nummer till i en Session("prodID") och om han klickar på en produkt till så läggs det ytterligare till ett ID-nummer i Session("prodID") och sedan efter han känner sig nöjd och klickar på "gå till kassan" så hämtar man alla ID-nycklarna i Session("prodID") via Split(). Och när man hämtar dem, var för sig så kan man plocka ut den fakta man behöver ur databasen och utföra beräkningar med pris etc. samt presentera hans köp... !?
Jo, men du måste inte dela upp produkterna med split. Du skulle också kunna bara köra en selectfråga som den ovan för att hämta information om alla produkter som ligger i sessionsvariabelskundvagnen.
Hur använder jag Split() så att jag får ut det första ID-numret i ex. ProdID och sedan kan använda det, för att sedan hämta nästa ID medhjälp av Spit() , kanske dum fråga, men ändå...
Ett exempel:
varProducts = Split(Session("ID"), ",")
For i = 0 to UBound(varProducts)
ProdID = varProducts(i)
' Gör vad du nu ska göra med varje artikel
strSQL = "SELECT * FROM tabell WHERE ProdID = '" & ProdID & "'"
' Öppna recordsets, etc.
Next
Läste dessutom en annan (tidigare) tråd angående varukorgar, och de vart väldigt inne på att använda sig av databasen, en temporär tabell.
Detta förstår jag inte anledningen till, om man nu kan använda sig utav Session istället och sedan skicka över kundens order till en databas tabell som hanterar beställningarn...
Jag lagrar alltid kundvagnar i databas, och det beror på att jag sysslar med system där alla som handlar är inloggade. Kunden kan alltså spara sin kundvagn över besök. Om din kund lägger en vara i kundvagnen och sedan går på lunch, så är varan borta när han är tillbaka. Dessutom lagrar jag, förutom artikelinfo, även antal och paketinformation i kundvagnen. Det finns alltså lägen då man märker att det är smidigare att använda en databasbaserad kundvagn.
Mvh
Okey, tack för informationen!
Jag har också så att kunden loggar in på sidan, dock om han är inaktiv så loggas han ut efter 15 min, detta pågrund av att ingen annan skall kunna sätta sig vid hans dator och börjar lägga orders på hans bekostnad.
Dock verkar ju Session funka bra till detta, efter han bekräftar köpet så skickar man informationen till databasen och en faktura kan skrivas ut via "rapport".
Jag tycker detta verkar bra, dock har du flera lösningar men anledning av att du själv gör det via databasen, men anser du att Session skulle funka bra i detta fallet, dock: hemsidan kommer ha väldigt många användare och kunder, och väldigt många är förhoppningsvis 1000:tals i framtiden...
Mvh Björn Mattsson
Fler får gärna ge synpunkter samt tips...
Detta vill jag göra
Jag håller på med en sida för en stor tävling. På en sida ska man fylla i ett formulär för att göra sin anmälan. Efter detta laddas en ny sida med en välkomsttext och ett mail går iväg med JMAIL för att bekräfta och ge mer upplysningar. Uppgifterna lagras i Access och en del av detta innehåll skickas med i mailet.
Att använda <br> var inte alls så lyckat så det blev vbCrlf i stället.
Att lära sig detta vid mina år är inte helt lätt men väl f*n så kul.
Upptäcker att det finns så oändligt mkt mer att ta till sig...
Inte dubbelposta! Kolla dina andra tråd, har svarat där!