Frågan 6 sep. 2004 19:16 #1 Hej, jag sitter och jobbar lite med detta script: http://www.aspsidan.nu/scriptRead.asp?fId=1130
har laddat ner det från aspsidan.nu
Det är ett bokningssystem av biljetter... Jag vill dock att då man inte fyllt i alla rutor ska det komma fram att man har missat rutor och ska då fylla i dem. Som det är nu får man ett felmeddelande om man inte fyllt i alla turot... Kan någon fixa det?
Vill ni inte ladda hem scriptet ser koden ut så här...
Default.asp
<HTML>
<HEAD>
<TITLE>Add your news</TITLE>
<link rel=stylesheet href="admin/stile.css" type="text/css">
</HEAD>
Beställ biljetter<br>
<form name="add" method="post" action="default.asp?do=add">
<TABLE width="624">
<TR>
<TD valign="top" height="19" width="418">
<table width="417" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="208">Förnamn:<br>
<input name="fnamn" type="text" id="fnamn" size="30"></td>
<td>Efternamn:<br>
<input name="enamn" type="text" id="enamn" size="30"></td>
</tr>
</table>
<TD valign="top" width="194"></TR>
<TR>
<TD width="620" height="19" colspan="2" valign="top"> Adress: <br> <input name="adress" type="text" id="adress" size="30">
</TR>
<TR>
<TD width="418" height="19" valign="top">
<table width="389" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="208"><b>Postnr. <br>
<input name="postnr" type="text" id="postnr" size="12"></td>
<td>Ort:<br>
<input name="ort" type="text" id="ort" size="30"></td>
</tr>
</table>
</b>
<TD height="19" valign="top"></TR>
<TR>
<TD width="418" height="19" valign="top">
<table width="396" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="208">E-post:<br>
<input type="post" name="email"></td>
<td>Tel.nr.<br>
<input name="tel" type="text" id="tel"></td>
</tr>
</table>
<TD height="19" valign="top"></TR>
<TR>
<TD width="620" height="19" colspan="2" valign="top">Här nedan gör du dina
förhandsbokningar av de billjetter du vill ha.</TR>
<TR>
<TD width="620" height="19" colspan="2" valign="top"></TR>
<TR>
<TD width="418" height="19" valign="top">Jag vill beställa
<input name="frest" type="text" id="Ung" value="0" size="4"> st inträdesbiljett | Ungdom (upp till gymnasiet)
<TD height="19" valign="top">Dessa kostar 50 kr/st</TR>
<TR>
<TD width="418" height="19" valign="top">Jag vill beställa
<input name="lorst" type="text" id="Vux" value="0" size="4"> st inträdesbiljett | Vuxen
<TD height="19" valign="top">Dessa kostar 100 kr/st</TR>
<TR>
<TD width="418" height="19" valign="top">Jag vill beställa
<input name="helg" type="text" id="Mat" value="0" size="4"> st matpaket.
<TD height="19" valign="top">Dessa kostar 20 kr/st</TR>
<TR>
<TD width="620" height="19" colspan="2" valign="top"></TR>
<TR>
<TD width="620" height="19" colspan="2" valign="top"><INPUT TYPE="Submit" value="Skicka beställning">
</TR>
</TABLE>
</form>
<%
If Request.QueryString("do") = "add" Then
Set MinCon = Server.CreateObject("ADODB.Connection")
Set rs = Server.CreateObject("ADODB.RecordSet")
MinCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data source=" & Server.MapPath("db/bokning.mdb")
SQL = "SELECT * From bokning"
rs.Open SQL, MinCon, 1, 2
rs.AddNew
rs("fnamn") = Request.Form("fnamn")
rs("enamn") = Request.Form("enamn")
rs("adress") = Request.Form("adress")
rs("postnr") = Request.Form("postnr")
rs("ort") = Request.Form("ort")
rs("email") = Request.Form("email")
rs("tel") = Request.Form("tel")
rs("Ung") = Request.Form("frest")
rs("Vux") = Request.Form("lorst")
rs("Mat") = Request.Form("helg")
rs("date") = Date
rs.Update
rs.Close
Response.Redirect("bek.asp")
End If
%>
<br>
<hr width="96%">
<div align="center"> </div>
bek.asp
<HTML>
<HEAD>
<TITLE>News</TITLE>
<link rel=stylesheet href="stile.css" type="text/css">
<SCRIPT LANGUAGE="JavaScript">
<!-- Begin
function varitext(text){
text=document
print(text)
}
// End -->
</script>
</HEAD>
<%
Set MinCon = Server.CreateObject("ADODB.Connection")
Set rs = Server.CreateObject("ADODB.Recordset")
MinCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("db/bokning.mdb")
Const perSida = 1
Sidan = Request.QueryString("sida")
If Sidan = "" then
sida = 1
Else
sida = Sidan
End If
With rs
.CursorLocation = 3
.CacheSize = perSida
End With
SQL = "SELECT * From bokning Order By Id Desc"
rs.Open SQL, MinCon
With rs
.MoveFirst
.PageSize = perSida
.AbsolutePage = sida
End With
Sidor = rs.PageCount
Count = 0
Do While Not rs.EOF And Count < rs.PageSize
%>
<p>Din beställning skickades <%=rs("date")%></p>
<p>Ditt bokningsnummer är: se-28/<%=rs("id")%></p>
<p>Dina beställnings uppgifter är:</p>
<table width="36%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>Förnamn:</td>
<td>Efternamn</td>
</tr>
<tr>
<td><%=rs("fnamn")%></td>
<td><%=rs("enamn")%></td>
</tr>
</table>
<table width="36%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>Adress:</td>
</tr>
<tr>
<td><%=rs("adress")%></td>
</tr>
<tr>
<td><%=rs("postnr")%> <%=rs("ort")%></td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td>Epost:</td>
</tr>
<tr>
<td><%=rs("email")%></td>
</tr>
<tr>
<td>Telefonnummer:</td>
</tr>
<tr>
<td><%=rs("tel")%></td>
</tr>
</table>
<p> </p>
<table width="36%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>Du har gjort följande beställning av billjetter:</td>
</tr>
<tr>
<td><%=rs("Ung")%> st inträdesbiljetter ungdom</td>
</tr>
<tr>
<td><%=rs("Vux")%> st inträdesbiljetter vuxen</td>
</tr>
<tr>
<td><%=rs("Mat")%> st matpaket</td>
</tr>
</table>
<p> </p><table width="36%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>Du skall vid kassan betala
<% dim varde1, varde2, varde3, summa
varde1 = rs("Ung")*50
varde2 = rs("Vux")*100
varde3 = rs("Mat")*20
summa = varde1+varde2+varde3
response.write summa %>
</td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td><form>
<input name="print" type="button" value="Skriv ut bekräftelsen" onClick="varitext()">
</form></td>
</tr>
</table>
<p> </p>
<p> </p>
<p><br>
<br>
<br>
<%
Count = Count + 1
rs.MoveNext
Loop
rs.Close
MinCon.Close
%>
<%If Sidor = 1 Then%>
<%Else%>
<%End If%>
<%If Sidor <> 1 Then%>
<%For Sid = 1 To Sidor%>
<%If (Int(Sid)) = (Int(sida)) Then%>
<%=Sid%>
<%Else%>
<a href="default.asp?sida=<%=Sid%>"><%=Sid%></a>
<%End If%>
<%Next%>
<%End If%>
<br>
</p>
Sen en annan fråga oxå, kan man på något smidigt sätt göra så att man kan gå tillbaka och ändra sina uppgifter?
I Inferis Medlem sedan sep. 2000 667 inlägg Du kan ju alltid använda dig av:
if request.form("dag") = "" Then
response.write "Du glömde skriva dag"
elseif request.form("tid") = "" Then
respone.write "Du glömde skriva tid"
elseif request.form("Någotval") = "" Then
response.write "Du glömde välja något"
else
' Fälten är ifyllda, pela in allt i db:n
End if
I Inferis Medlem sedan sep. 2000 667 inlägg Din sista fråga förresten.
Om inte alla fälten är ifyllda, så visa formuläret igen:
<input type=text name=Alternativ1 value="<%=Request.form("Alternativ1")%>">
I Inferis Medlem sedan sep. 2000 667 inlägg Sen kommer säkert någon att skriva att det är bra om du har ett javascript som kollar formuläret efter tomma fält innan det postas.
Det funkar jättebra det med att man får upp meddelande om att inte fälten är ifyllda, men går det göra så att informationen inte försvinner? För nu blir alla fälten tomma då jag glömmer t.ex. Förnamnet...
Inferis skrev:
Din sista fråga förresten.
Om inte alla fälten är ifyllda, så visa formuläret igen:
<input type=text name=Alternativ1 value="<%=Request.form("Alternativ1")%>">
Detta fattar jag inte riktigt, vart ska de3tta placeras? :? Eller är detta svaret på min tidigare fråga i inlägget ovan detta? :S
EDIT: Tack! Det var som jag kom på, huvudet var nog lite trött :?
Ett problem, allt funkar jättebra men bara en sak. När man får en bekräftelse på det man beställt vill jag då ha att man kan ändra uppgifterna och rätta sig lite om man skrivit fel. Men hur ska jag göra det? Man kan ju inte bara hoppa tillbaka ett steg, då får man ju ett nytt serienummer då man klickar på bekräftaknappen igen. Någon som har en bra idé?