Du har inte skrivit <%=Server.HTMLEncode("moms")%> som value i ditt inputfält på bekräftelsesidan då?
Ny med ASP! Enkla frågor antar jag..
109 svar · 2 560 visningar · startad av tranceformer · sida 6 av 6
Frågan, av tranceformer
Jag har börjat med lite ASP och håller på att göra en butik, en väldigt enkel sådan till att börja med! Det jag ska göra är att ta informationen från textrutorna(enbart textrutor) i formen, och lägga in den i en databas. Till att börja med undrar jag ifall alla sidor ska sluta med .asp ifall man bara behöver ASP-kod på butiken. Jag har använt mig av[Haneng.com](http://www.haneng.com/lessons13.a
Läs frågan i sin helhet →Nej, där står det <%=Server.HTMLEncode(moms)%> ..
red. sen, så sen.
Det är nog dags att du visar hur hela bekräftelseformuläret ser ut, och hur koden på sidan som gör databasinsättningen ser ut.
Det här är bekräfta-sidan:
<%
Form_Namn = Trim(Replace(Request.Form("namn"),"""",""""""))
Form_Adress = Trim(Replace(Request.Form("adress"),"""",""""""))
Form_Postadress = Trim(Replace(Request.Form("postadress"),"""",""""""))
Form_Email = Trim(Replace(Request.Form("email"),"""",""""""))
Form_Telefonnr = Trim(Replace(Request.Form("telefonnr"),"""",""""""))
Form_Vin = Trim(Replace(Request.Form("vinglas"),"""",""""""))
Form_Champagne = Trim(Replace(Request.Form("champagneglas"),"""",""""""))
Form_Coctail = Trim(Replace(Request.Form("coctailglas"),"""",""""""))
Form_Snaps = Trim(Replace(Request.Form("snapsglas"),"""",""""""))
Form_Celter = Trim(Replace(Request.Form("celterglas"),"""",""""""))
Form_Grogg = Trim(Replace(Request.Form("grogglas"),"""",""""""))
vin = Request.Form("vinglas")
champagne = Request.Form("champagneglas")
coctail = Request.Form("coctailglas")
snaps = Request.Form("snapsglas")
celter = Request.Form("celterglas")
grogg = Request.Form("grogglas")
summa = cInt(vin*100) + cInt(champagne*100) + cInt(coctail*120) + cInt(snaps*100) + cInt(celter*100) + cInt(grogg*100)
antal = cInt(vin) + cInt(champagne) + cInt(coctail) + cInt(snaps) + cInt(celter) + cInt(grogg)
moms =(summa*0.20)
Validated_Form = true
IF len(Form_Namn)<2 THEN
Validated_Form = false
END IF
IF NOT Validated_Form THEN
%>
<blockquote>
<p>Du måste gå <a href="#" class="text_2" onClick="history.go(-1);">tillbaka</a> och fylla i alla fälten riktigt!</p>
</blockquote>
<%
ELSE
%>
<FORM ACTION="insert.asp" METHOD="post" style="font-size=9pt; font-family=arial; background-color=transparent">
<INPUT TYPE="hidden" name="namn" value="<%=Request.Form("namn")%>">
<INPUT TYPE="hidden" name="adress" value="<%=Request.Form("adress")%>">
<INPUT TYPE="hidden" name="postadress" value="<%=Request.Form("postadress")%>">
<INPUT TYPE="hidden" name="email" value="<%=Request.Form("email")%>">
<INPUT TYPE="hidden" name="telefonnr" value="<%=Request.Form("telefonnr")%>">
<INPUT TYPE="hidden" name="vinglas" value="<%=Request.Form("vinglas")%>">
<INPUT TYPE="hidden" name="champagneglas" value="<%=Request.Form("champagneglas")%>">
<INPUT TYPE="hidden" name="coctailglas" value="<%=Request.Form("coctailglas")%>">
<INPUT TYPE="hidden" name="snapsglas" value="<%=Request.Form("snapsglas")%>">
<INPUT TYPE="hidden" name="celterglas" value="<%=Request.Form("celterglas")%>">
<INPUT TYPE="hidden" name="grogglas" value="<%=Request.Form("grogglas")%>">
<INPUT TYPE="hidden" name="summa" value="<%=Server.HTMLEncode(summa)%>">
<INPUT TYPE="hidden" name="moms" value="<%=Server.HTMLEncode(moms)%>">
<PRE>
<B>Du har fyllt i följande uppgifter i din beställning:</B>
Namn/Företag: <font color="#00CCFF"><%=Form_Namn%></font>
Adress: <font color="#00CCFF"><%=Form_Adress%></font>
Postadress: <font color="#00CCFF"><%=Form_Postadress%></font>
E-Postadress: <font color="#00CCFF"><%=Form_Email%></font>
Telefonnr: <font color="#00CCFF"><%=Form_Telefonnr%></font>
Antal vinglas: <font color="#00CCFF"><B><%=Form_Vin%></B></font> st
Antal champagneglas: <font color="#00CCFF"><B><%=Form_Champagne%></B></font> st
Antal coctailglas: <font color="#00CCFF"><B><%=Form_Coctail%></B></font> st
Antal snapsglas: <font color="#00CCFF"><B><%=Form_Snaps%></B></font> st
Antal celterglas: <font color="#00CCFF"><B><%=Form_Celter%></B></font> st
Antal grogglas: <font color="#00CCFF"><B><%=Form_Grogg%></B></font> st
<b>Antal glas: <font color="orange"><%=antal%></font> st</b>
<b>Total kostnad: <font color="orange"><%=summa%></font> kr</b>
varav <font color="orange"><b><%=moms%></b></font> kr är moms
<b>Gå <a href="#" class="text" onClick="history.go(-1);">tillbaka</a> om du vill ändra någon uppgift.</b>
<INPUT TYPE=SUBMIT VALUE="Bekräfta" style="border:1px black solid;font-size=9pt;font-family=arial; background-color=#6699CC">
Och här är input-sidan:
<%
Dim objConn
Dim objRS
Set objRS = Server.CreateObject("ADODB.Recordset")
Set objConn = Server.CreateObject("ADODB.Connection")
objConn.ConnectionString="DRIVER={MySQL ODBC 3.51 Driver};SERVER=mysql1.kontrollpanelen.se;DATABASE=***;Port=3306;Option=131072;Stmt=Database=***;UID=***;PWD=***;"
SQL = "INSERT INTO information(Namn,Adress,Postadress,Email,Telefonnr,Vin,Champagne,Coctail,Snaps,Celter,Grogg,Total,Moms) VALUES ('" & Request.Form("namn") & "', '" & Request.Form("adress") & "', '" & Request.Form("postadress") & "', '" & Request.Form("email") & "', '" & Request.Form("telefonnr") & "', '" & Request.Form("vinglas") & "', '" & Request.Form("champagneglas") & "', '" & Request.Form("coctailglas") & "', '" & Request.Form("snapsglas") & "', '" & Request.Form("celterglas") & "', '" & Request.Form("grogglas") & "', '" & Server.HTMLEncode(summa) & "', '" & Server.HTMLEncode(moms) & "')"
objConn.Open
objConn.Execute (SQL),,128
objConn.Close
Set objConn = nothing
Response.Redirect "Klar.asp"
%>
Alla radbrytningar och så kommer här i inlägget, det ser bra ut på riktigt..jag lovar ;)
på input-sidan skapar du ju aldrig variablerna summa och moms?
Dessutom skulle du ju inte använda htmlencode i SQL-frågan?
Nej de skapade jag i bekräfta-sidan, och så tänkte jag skicka dem till input-sidan...men finns det bättre sätt så gör det inget! ;)
Ok, det trodde jag. Vad ska jag skriva i SQL-frågan då?
På samma sätt som med alla andra värden... Du lägger de i hidden-fält på bekräftelsesidan och sedan använder du request.form för att hämta in de värdena där du ska lägga in datat i databasen.
Självklart ska det vara så! Fel av mig!
Det funkade utmärkt!
Tack!
Det finns säkert fler problem som dyker upp snart, därför accepterar jag inte svaret, än.
Nu ska det inte vara något mer, så jag skulle vilja tacka alla som har hjälpt mig (ni vet nog själva om ni har gjort det! ;) )! Jag är oerhört tacksam för alla tips, jag har lärt mig mycket på den här tiden! Tack än en gång!
Mvh/Dennis
