Hur gör man för att kunna välja vilka priser man vill se på en webplats. Exempelvis inklusive eller exklusive moms. Vill att sql-satsen skall vara olika beroende på vilket val man gjort. Valet skall också gälla "hela webplatsen" global kanske det heter???
Tänkte att man antingen kunde klicka på en länk eller använda sig av radiobutton.
Vill att när man skiftar radiobutton skall sidan laddas om...
Några ideér??? :p
Edit.
Såg att Jmedata.se har det jag efterfrågar...
<%
if isnumeric(Request.QueryString("pricesetting")) then
Session("pricesetting") = Cint(Request.QueryString("pricesetting"))
else
if session("pricesetting") = "" then session("pricesetting") = 0
end if
if session("pricesetting") = 0 then
' här kör vi SQL-fråga för priser exkl.moms
else
' SQL-fråga för priser inkl. moms
end if
%>
<form action="sidan.asp" method="get">
<input type="radio" name="pricesetting" value="1" onclick="this.form.submit();"> inkl. moms<br>
<input type="radio" name="pricesetting" value="0" onclick="this.form.submit();"> exkl. moms<br>
</form>
Men jag hade nog använt en cookie istället för en sessionsvariabel, dock.
...och var ska jag lägga koden??? Har inte jobbat något med cookies innan... :r
Det spelar inte så stor roll, egentligen. I mitt kodexempel ovan kan du byta delen som sätter sessionsvariabel till kod som sätter kaka istället. Jag skulle lagt koden överst på sidan.
Hur får jag hela sidan att laddas om när jag skiftar radiobutton???
<%
if isnumeric(Request.QueryString("pricesetting")) then
Response.Cookies("sydostel")("pricesetting") = Request.QueryString("pricesetting")
Response.Cookies("sydostel").Expires = #2006-01-01#
end if
if Request.Cookies("sydostel")("pricesetting") = "" then
pricesetting = 0
else
pricesetting = cint(Request.Cookies("sydostel")("pricesetting"))
end if
if pricesetting = 0 then
' här kör vi SQL-fråga för priser exkl.moms
else
' SQL-fråga för priser inkl. moms
end if
%>
<form action="sidan.asp" method="get">
<input type="radio" name="pricesetting" value="1" onclick="this.form.submit();"> inkl. moms<br>
<input type="radio" name="pricesetting" value="0" onclick="this.form.submit();"> exkl. moms<br>
</form>
Jo, det kan jag leva med.... Det spelar inte så stor roll. Ingen alls faktisk!!!
Men jag kom på en annan sak.....
Laddas hela frameseten om eller bara den sidan som jag angivit???
Sidan är uppbyggd med ramar och valet ska ligga i bottomFrame. Nu är det väl så att priserna kommer att visas i mainFrame i de flesta fall. Men hur fungerar det?
Sidan är uppbyggd av tre olika frames; menuFrame.asp, bottomFrame.asp och mainFrame.asp.
bottomFrame har en listmeny som är "kundvagn" , här skall också valet mellan avtal- och nettopriser ligga. I mainFrame presenteras sökresultat och sammanställning av kundvagnen. Dessa filer heter searchResult.asp och cart.asp
När man skiftar mellan avtal- och nettopriser skall mainFrame laddas om med de nya värdena. I varukorgen lagras inga priser så den behöver inte uppdateras.
SQL-satserna ligger i searchResult.asp och cart.asp.
Hur skall koden läggas ut i de olika filerna för att det skall fungera???
Vad händer (eller bör hända, jag är inte bombsäker :) )?
Första stycket gör att vi vet vilken sida som för tillfället hör hemma i mainframen. Andra stycket säger att om swap = 1, så öppnar vi den aktuella sidan i mainframen. Eller uppdaterar, som det egentligen blir. :) Och formen säger vi bara till att gå till sidan.asp?swap=1, så bodytaggen hoppar igång. Detta gör att sidan.asp hinner exekveras och pricesetting cookien hinner ändras innan mainframen laddas om.
- Jag hoppas att du har förstått.
- Javisst. Tack Baloo.