Asp-fil vil ikke åbne på www - onlinebestilling/database
HejDenne fil (modtag.asp) virker fint lokalt på min PWS og opdaterer min Access-97 database fint, men den kan ikke åbnes på www hos Cybercity som den eneste fil blandt mange. Jeg har checket igen og igen for fejl, men jeg har som nubegynder ikke kunnet finde fejlen.
Filen er \"sidste\" fil i rækken af en onlinebestilling. Min midterste frame kan ses på http://www.web-tiger.dk/kc/framebestil.htm
<% @language=JavaScript %>
<!-- #include file=\"database.js\" -->
<!-- #include file=\"string.js\" -->
<%
OK = 0;
FORKERT_KODEORD = 1;
KUNDE_EKSISTERER = 2;
objConnection = Server.CreateObject(\"ADODB.Connection\");
strConn = \"Provider=Microsoft.Jet.OLEDB.4.0; Data Source =\" +
Server.MapPath(\"kc.mdb\");
objConnection.Open(strConn);
// kontroller først, om kunden er logget ind
id = -1;
if (Request.Cookies(\"kundeid\") != \"\")
{
id = opdaterKunde(Request.Cookies(\"kundeid\"));
} else
{
id = tilfojKunde();
}
// registrer ordren
Application.Lock();
objConnection.execute(\"INSERT INTO ordre (kunde, dato, leveringsdato) VALUES(\" + id + \", \" + toSqlDate(new Date()) + \", \" + Request.Form(\"leveringsdato\") + \")\");
res = objConnection.execute(\"SELECT id FROM ordre WHERE kunde=\" + id + \" ORDER BY id DESC\");
ordrenummer = res.Fields(\"id\");
Application.Unlock();
produktantal = Session(\"produktantal\");
for (i = 0; i < produktantal; i++)
{
sql = \"INSERT INTO ordrelinie (produkt, antal, ordre) VALUES (\";
sql += Session(\"produkt\"+i);
sql += \", \";
sql += Session(\"antal\"+i);
sql += \", \";
sql += ordrenummer;
sql += \")\";
objConnection.execute(sql);
}
printResult(OK);
function opdaterKunde(id)
{
sql = \"UPDATE kunde SET \";
sql += \"Kodeord=\'\" + Request.Form(\"kodeord\") + \"\', \";
sql += \"Kundenr=\" + Request.Form(\"Kundenr\") + \" , \";
sql += \"Navn=\'\" + Request.Form(\"Navn\") + \"\', \";
sql += \"Adresse=\'\" + Request.Form(\"Adresse\") + \"\', \";
sql += \"Postnummer=\" + Request.Form(\"Postnummer\") + \" , \";
sql += \"Postdistrikt=\'\" + Request.Form(\"Postdistrikt\") + \"\', \";
sql += \"Email=\'\" + Request.Form(\"Email\") + \"\'\";
sql += \" WHERE id=\" + id;
objConnection.execute(sql);
return id;
}
function tilfojKunde(id)
{
// kontroller, at de to kodeord er ens
if (!strcmp(Request.Form(\"kodeord\"),Request.Form(\"kodeord2\")))
{
printResult(FORKERT_KODEORD);
}
// kontroller, at der ikke allerede eksisterer en kunde med den email-adresse
res = objConnection.execute(\"SELECT id FROM kunde WHERE email=\'\" + Request.Form(\"Email\") + \"\'\");
if (!res.EOF)
{
// kunden eksisterer
printResult(KUNDE_EKSISTERER);
}
sql = \"INSERT INTO Kunde (Kundenr, Navn, Adresse, Postnummer, Postdistrikt, Email, Kodeord) VALUES (\";
sql += Request.Form(\"Kundenr\") + \", \";
sql += \"\'\" + Request.Form(\"Navn\") + \"\', \";
sql += \"\'\" + Request.Form(\"Adresse\") + \"\', \";
sql += Request.Form(\"Postnummer\") + \", \";
sql += \"\'\" + Request.Form(\"Postdistrikt\") + \"\', \";
sql += \"\'\" + Request.Form(\"Email\") + \"\', \";
sql += \"\'\" + Request.Form(\"kodeord\") + \"\')\";
objConnection.execute(sql);
res = objConnection.execute(\"SELECT id FROM kunde WHERE Email=\'\" + Request.Form(\"Email\") + \"\'\");
return res.Fields(\"id\");
}
function printResult(status)
{
%>
<html>
<head>
<title>K.C. Frugt Aps [Indkøbskurv]</title>
</head>
<body bgcolor=\"#99CC99\">
<table background=\"vandret.jpg\" width=\"100%\">
<tr><td>
<div align=\"center\"><b><font face=\"Arial, Helvetica, sans-serif\" size=\"6\" color=\"#99CC99\">K.C.
FRUGT <font size=\"4\">ApS</font></font></b> </div></td></tr></table><table>
<tr>
<td> <%
if (status == OK)
{
%> <br>
<h4><font face=\"Times New Roman, Times, serif\" color=\"#333300\">Ordrebekræftelse.</font><font face=\"Times New Roman, Times, serif\" size=\"2\" color=\"#333300\"><br>
Din ordre er nu blevet afsendt. Den har fået online-ordrenummer <%=ordrenummer%>.
Opgiv venligst dette nummer, hvis du har spørgsmål angående din ordre.</font></h4>
<font color=\"#333300\"><%
produktantal = Session(\"produktantal\");
undefined = Session(\"garbage\");
totalpris = 0;
%> </font>
<table width=70% cellpadding=\"2\" cellspacing=\"0\" border=\"2\" bordercolor=\"#336600\" align=\"center\">
<TR>
<td height=\"29\" width=\"11%\"><font color=\"#303000\"><b><font face=\"Times New Roman, Times, serif\" size=\"-1\">Antal</font></b></font></td>
<td height=\"29\" width=\"49%\"><font color=\"#303000\"><b><font face=\"Times New Roman, Times, serif\" size=\"-1\">Varenavn</font></b></font></td>
<td height=\"29\" width=\"23%\">
<div align=\"right\"><font color=\"#303000\"><b><font face=\"Times New Roman, Times, serif\" size=\"-1\">kr.
pr enhed</font></b></font></div>
</td>
<td height=\"29\" width=\"17%\">
<div align=\"right\"><font color=\"#303000\"><b><font face=\"Times New Roman, Times, serif\" size=\"-1\">kr.
i alt</font></b></font></div>
</td>
</tr>
<%
for (i = 0; i < produktantal; i++) {
if (Session(\"antal\"+i) == 0) {
continue;
}
%>
<tr>
<td width=\"11%\"> <font face=\"Times New Roman, Times, serif\" size=\"-1\" color=\"#303000\"><%=Session(\"antal\"+i)%>
</font></td>
<td width=\"49%\"> <font face=\"Times New Roman, Times, serif\" size=\"-1\" color=\"#303000\"><%
res = objConnection.execute(\"SELECT Varenavn, Pris FROM Produkt WHERE id=\" + Session(\"produkt\"+i));
%> <%=res.Fields(\"Varenavn\")%> </font></td>
<td align=right width=\"23%\"> <font face=\"Times New Roman, Times, serif\" size=\"-1\" color=\"#303000\"><%
produktpris = res.Fields(\"Pris\");
%> <%=produktpris%> </font></td>
<td align=right width=\"17%\"> <font face=\"Times New Roman, Times, serif\" size=\"-1\" color=\"#303000\"><%=Math.round(produktpris * Session(\"antal\"+i) * 100) / 100%>
<%
totalpris += Math.round(produktpris * Session(\"antal\"+i) * 100) / 100;
%> </font></td>
</tr>
<%
}
%>
<tr>
<td colspan=\"3\"><font face=\"Times New Roman, Times, serif\" size=\"-1\" color=\"#303000\"><b>Total</b></font></td>
<td align=right width=\"17%\"><font face=\"Times New Roman, Times, serif\" size=\"-1\" color=\"#303000\"><b><%=totalpris%>
</b></font></td>
</tr>
</table>
<h5><font color=\"#333300\"><%
Response.Write(\"Leveringsdato:\");
Response.Write(\" \");
Response.Write(Request.Form(\"Leveringsdato\"));
Response.Write(\"<br>\");
Response.Write(\"Kundenr:\");
Response.Write(\" \");
Response.Write(Request.Form(\"Kundenr\"));
Response.Write(\"<br>\");
Response.Write(\"Navn:\");
Response.Write(\" \");
Response.Write(Request.Form(\"Navn\"));
Response.Write(\"<br>\");
Response.Write(\"Adresse:\");
Response.Write(\" \");
Response.Write(Request.Form(\"Adresse\"));
Response.Write(\"<br>\");
Response.Write(\"Postnummer og by:\");
Response.Write(\" \");
Response.Write(Request.Form(\"Postnummer\"));
Response.Write(\" \");
Response.Write(Request.Form(\"Postdistrikt\"));
Response.Write(\"<br>\");
Response.Write(\"Emailadresse:\");
Response.Write(\" \");
Response.Write(Request.Form(\"Email\"));
Response.Write(\"<br>\");
Response.Write(\"Kodeord:\");
Response.Write(\" \");
Response.Write(Request.Form(\"kodeord\"));
Response.Write(\"<br>\");
%> </font> </h5>
<h5> <font color=\"#333300\"> Det anbefales at tage et print af denne
side.</font></h5>
<p><font face=\"Times New Roman, Times, serif\" size=\"-1\" color=\"#333300\">
Eventuelle spørgsmål og kommentarer kan sendes til <a href=mailto:tiger@web-tiger.dk>tiger@web-tiger.dk</a>.
</font>
<p><font face=\"Times New Roman, Times, serif\" size=\"-1\" color=\"#333300\">
Tak, fordi du handlede hos K.C. Frugt Aps. </font>
<p><font face=\"Times New Roman, Times, serif\" size=\"-1\" color=\"#333300\"><a href=\"frame.htm\" target=\"_top\">Retur
til forsiden</a></font>
<p> <font face=\"Times New Roman, Times, serif\" size=\"-1\"><%
}
else if (status == FORKERT_KODEORD || status == KUNDE_EKSISTERER) {
%> </font>
<h5><font face=\"Times New Roman, Times, serif\">Fejl</font></h5>
<font face=\"Times New Roman, Times, serif\" size=\"-1\">Der opstod en fejl i forbindelse
med afsendelse af din ordre. Din ordre er ikke afsendt! </font>
<p> <font face=\"Times New Roman, Times, serif\" size=\"-1\"><%
if (status == FORKERT_KODEORD)
{
%> De to indtastede kodeord var ikke ens. Hvis du vil registreres som kunde og
blive genkendt, når du vender tilbage til K.C. Frugt Aps, skal du vælge
et kodeord og gentage dette på afsendelsessiden. Hvis du ikke vil registreres,
skal du lade begge felter være blanke. </font>
<p><font face=\"Times New Roman, Times, serif\" size=\"-1\"> Klik <a href=afsend.asp>her</a>
for at komme tilbage til afsendelssiden. <%
} else
{
%> Der er allerede registreret en kunde med den angivne email-adresse (<%=Request.Form(\"Email\")%>).
Hvis du har indtastet email-adressen korrekt, skal du <a href=login.asp>logge
ind</a> ved at angive din email-adresse og dit kodeord. </font>
<p><font face=\"Times New Roman, Times, serif\" size=\"-1\"> Hvis du vil indtaste
en anden email-adresse, kan du gøre det på <a href=afsend.asp>afsendelsessiden</a>.
<%
}
}
%> </font>
</td>
</tr>
</table>
</body></html>
<%
Response.End();
}
%>
Mvh
Anni
