Skriver 2 gange ned i db... hvorfor???
Hej!Jeg har lavet et asp dokument, hvor det skal være muligt at tilføje poster til en tabel i min db. Men af en eller anden grund tilføjer den 2 poster med det samme indhold - hvorfor?
Min kode ser sådan ud:
----------------------
<% @LANGUAGE = VBScript %>
<%
Option Explicit
Response.Expires = 0
Response.Buffer = True
Dim strConnection, rs, strSQL, objConn, strDato, strNavn, strBeskrivelse
%>
<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\">
<HTML>
<HEAD>
<!-- Minus AutoDato -->
<TITLE>OpretMenu</TITLE>
<META NAME=\"Generator\" CONTENT=\"Stone\'s WebWriter 3\">
<link rel=\"stylesheet\" href=\"../css/ramme_iframe.css\" type=\"text/css\">
<link rel=\"stylesheet\" href=\"../css/form.css\" type=\"text/css\">
<SCRIPT ID=clientEventHandlersJS LANGUAGE=javascript>
<!--
function btnSubmit_onclick() {
var TRUE = new Boolean(\"True\")
var FALSE = new Boolean(\"False\")
blnError = FALSE
strError = \"Følgende felter mangler at bliver udfyldt før menuen kan indsættes: \\n\\n\"
if (formmenu.dato.value == \"\")
{
blnError = TRUE
strError = strError + \" - Dag\\n\"
};
if (formmenu.mm.value == \"\")
{
blnError = TRUE
strError = strError + \" - Måned\\n\"
};
if (formmenu.aar.value == \"\")
{
blnError = TRUE
strError = strError + \" - År\\n\"
};
if (formmenu.navn.value == \"\")
{
blnError = TRUE
strError = strError + \" - Ret\\n\"
};
if (formmenu.beskrivelse.value == \"\")
{
blnError = TRUE
strError = strError + \" - Beskrivelse\\n\"
};
if (blnError == TRUE)
{
strError = strError + \"\\nIndtast venligst de manglende data.\"
alert(strError)
}
else
{
formmenu.submit()
};
}
//-->
</SCRIPT>
</HEAD>
<body>
<%
\'tjekker om der er indtastet noget i tekstfelterne
if Request.Form(\"dato\") = \"\" OR Request.Form(\"Navn\") = \"\" OR Request.Form(\"Beskrivelse\") = \"\" then
%>
<table border=\"0\" width=\"100%\" height=\"100%\">
<tr>
<td width=\"*\" height=\"*\"></td>
<td width=\"400\" height=\"200\">
<B>Tilføj menu</B><BR><BR>
Udfyld nedenstående punkter og klik på knappen <BR>
\"Tilføj menu\" for at tilføje en menu til databasen.<BR><BR>
HUSK - <U>Alle</U> felter skal udfyldes!<BR><BR>
<form NAME=\"formmenu\" METHOD=\"POST\">
<TABLE BORDER=\"0\">
<TR>
<TD align=\"right\">Dato:</TD>
<TD>
<input type=\"date/time\" NAME=\"dato\" maxlength=\"2\" SIZE=\"2\" class=\"text_felt\">
-
<INPUT TYPE=\"text\" SIZE=\"2\" MAXLENGTH=\"2\" NAME=\"mm\" class=\"text_felt\">
-
<INPUT TYPE=\"text\" SIZE=\"4\" MAXLENGTH=\"4\" NAME=\"aar\" class=\"text_felt\">
dd-mm-åååå<BR></TD>
</TR>
<TR>
<TD align=\"right\">Ret:</TD>
<TD>
<INPUT TYPE=\"text\" SIZE=\"25\" MAXLENGTH=\"45\" NAME=\"navn\" CLASS=\"text_felt\">
<BR></TD>
</TR>
<TR>
<TD align=\"right\">Beskrivelse:</TD>
<TD>
<textarea type=\"memo\" ROWS=\"5\" name=\"beskrivelse\" cols=\"25\" class=\"text_felt\"></textarea>
<BR></TD>
</TR>
<TR>
<TD></TD>
<TD>
<INPUT TYPE=\"submit\" VALUE=\"Tilføj menu\" maxlength=\"20\" ID=btnsubmit NAME=\"btnsubmit\" onclick=\"return btnSubmit_onclick()\" class=\"knap\">
</TD>
</TR>
</TABLE>
</td>
<td width=\"*\" height=\"*\"></td>
</tr>
<tr>
<td width=\"*\" height=\"*\"></td>
<td width=\"*\" height=\"*\"></td>
<td width=\"*\" height=\"*\"></td>
</tr>
</table>
<% else
dim dato, mm, aar
\' lægger indtastede data i variabler
dato = request.form(\"dato\")
mm = request.form(\"mm\")
aar = request.form(\"aar\")
\'tjekker om der kun er indtastet numre
If not IsNumeric(dato) OR not IsNumeric(mm) OR not IsNumeric(aar) then
Response.Write(\"Fejl i indtastet nummer - skal være et tal\")
else
aar = int(aar)
dato = int(dato)
mm = int(mm)
\'sammensætter datoen fra tekstfelterne
strDato = dateserial(aar,mm,dato)
strBeskrivelse = Replace(Request.Form(\"beskrivelse\"), \"\'\", \"\")
strNavn = Replace(Request.Form(\"Navn\"), \"\'\", \"\")
\'Databaseforbindelse
Set objConn = Server.CreateObject(\"ADODB.Connection\")
strConnection = \"Provider=Microsoft.Jet.OLEDB.4.0; \" & _
\"Data Source=\" & Server.Mappath(\"../db/seniornet.mdb\")
objConn.Open strConnection
\'Benytter recordset-objektet til at hente data med
Set rs = Server.Createobject(\"ADODB.Recordset\")
\' skriver ned i db
strSQL = \"INSERT INTO menu (\"
strSQL = strSQL & \"Dato, \"
strSQL = strSQL & \"Navn, \"
strSQL = strSQL & \"Beskrivelse) \"
strSQL = strSQL & \"values( \"
strSQL = strSQL & \"\'\" & strDato & \"\', \"
strSQL = strSQL & \"\'\" & strNavn & \"\', \"
strSQL = strSQL & \"\'\" & strBeskrivelse & \"\')\"
objConn.Execute(strSQL)
Response.write \"<CENTER>\" & \"Menuen er tilføjet\" & \"<BR><BR>\"
Response.write \"<a href=\'opretmenu.asp\'>\" & \"Tilføj flere menuer\" & \"</a>\"
\' Luk databaseforbindelse
objConn.Close
Set objConn = Nothing
end if
end if
%>
</BODY>
</HTML>
----------------------------
Mvh - N!NJA
