18. april 2002 - 23:17
Der er
7 kommentarer og 1 løsning
Data oprettes to gange??
Hej Jeg har følgende script: ---------------------- <% @LANGUAGE = VBScript %> <% Option Explicit Response.Expires = 0 %> <!--#include file="../adovbs.inc"--> <% '************************************************ ' Variablerne defineres '************************************************ Dim conn, rs, strConnect, strFirma, strAdresse, intPostnr, strPerson, strStilling, intTelefon, strEmail '************************************************ ' Henter dataen fra formularen '************************************************ strFirma = Request.Form("fFirma") strAdresse = Request.Form("fAdresse") intPostnr = Request.Form("fPostnr") strPerson = Request.Form("fPerson") strStilling = Request.Form("fStilling") intTelefon = Request.Form("fTelefon") strEmail = Request.Form("fEmail") '************************************************ ' Connecter til databasen '************************************************ 'strConnect = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& Server.mappath("/") & "\..\scripts\release.mdb" strConnect = "Data Source=c:\inetpub\database\release.mdb;Provider=Microsoft.Jet.OLEDB.4.0;" Set conn = Server.CreateObject ("ADODB.Connection") conn.Open strConnect '************************************************ ' Gemmer dataen i databasen '************************************************ Set rs = Server.CreateObject ("ADODB.Recordset") rs.CursorLocation = adUseServer rs.CursorType = adOpenForwardOnly rs.LockType = adLockOptimistic rs.Open "kontakt", conn, , , adCmdTable rs.AddNew rs("firma") = strFirma rs("adresse") = strAdresse rs("postnr") = Int(intPostnr) rs("kontaktperson") = strPerson rs("stilling") = strStilling rs("telefon") = Int(intTelefon) If strEmail <> "" Then rs("email") = strEmail End If rs.Update '************************************************ ' Lukker forbindelsen til databasen '************************************************ rs.Close conn.Close Set rs = Nothing Set conn = Nothing Response.Redirect("default.asp?save=true") %> ----------------- Problemet er, at nogle gange tilføjes dataen to gange, hvordan kan det være?
Annonceindlæg fra HP
18. april 2002 - 23:39
#1
Jeg ved ikke helt om det hjælper men jeg har altid benytter adOpenKeyset som CursorType: rs.CursorType = adOpenKeyset
19. april 2002 - 00:01
#2
Den gør det stadig.
19. april 2002 - 00:03
#3
kan det tænkes at siden som gemmer data i nogle tilfælde blvier kaldt to gange? For selv koden ligger ikke op til de så vidt jeg kan se.
19. april 2002 - 00:08
#4
Min formular ser sådan ud: <html> <head> <title>Release02 > Hvem skal inviteres?</title> <script type="text/javascript"> <!-- function tjek(fn) { fi = fn.fFirma.value; ad = fn.fAdresse.value; pn = fn.fPostnr.value; ko = fn.fPerson.value; st = fn.fStilling.value; tl = fn.fTelefon.value; em = fn.fEmail.value; if ((fi.length == "") || (ad.length == "") || (pn.length == "") || (ko.length == "") || (st.length == "") || (tl.length == "")) { alert('Følgende felter skal udfyldes:\n\n - Firma\n - Adresse\n - Postnr\n - Kontaktperson\n - Stilling\n - Telefon'); document.gemKontakt.fFirma.focus(); return false; } var reg_pn = /^([0-9]{4})/; if (pn.length != "") { if (!reg_pn.test(pn)) { alert('Det indtastede \"Postnr\" er ikke gyldig.'); document.gemKontakt.fPostnr.focus(); return false; } } var reg_tl = /^([0-9]{8})/; if (tl.length != "") { if (!reg_tl.test(tl)) { alert('Den indtastede \"Telefon\" er ikke gyldig.'); document.gemKontakt.fTelefon.focus(); return false; } } var reg_em = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z])+$/; if (em.length != "") { if (!reg_em.test(em)) { alert('Den indtastede \"E-mail\" er ikke gyldig.'); document.gemKontakt.fEmail.focus(); return false; } } document.gemKontakt.submit(); } //--> </script> <style type="text/css"> <!-- a { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10pt; font-weight: bold; color: #AAAAAA; text-decoration: none} a:hover { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10pt; font-weight: bold; color: #CCCCCC; text-decoration: underline} .text10BoldBlack { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10pt; font-weight: bold; color: #000000} .text10Bold { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10pt; font-weight: bold; color: #FFFFFF} .text14Bold { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 14pt; font-weight: bold; color: #FFFFFF} .formText { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 8pt; color: #FFFFFF; background-color: #B00D28; border: #FFFFFF; border-style: solid; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px} .formButton { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10pt; font-weight: bold; color: #FFFFFF; background-color: #B00D28; text-align: center; vertical-align: middle; border: #FFFFFF; border-style: solid; border-top-width: 2px; border-right-width: 2px; border-bottom-width: 2px; border-left-width: 2px} --> </style> </head> <body text="#000000" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" bgcolor="#B00D28"> <table width="99%" border="0" cellspacing="0" cellpadding="0" align="center"> <tr> <td align="center"><img src="logo.gif" width="130" height="130"></td> </tr> <tr> <td height="35" class="text14Bold" style="text-align: center"> Hvem skal inviteres til Release02? </td> </tr> <tr> <td height="35" class="text14Bold" style="text-align: center"><a href="list.asp">Oversigt over indtastede</a></td> </tr> <% If Request.QueryString("save") = "true" Then Response.Write "<tr>"& VbCrLF Response.Write "<td height=""35"" class=""text10BoldBlack"" style=""text-align: center"">Firmaet et gemt i databasen</td>"& VbCrLf Response.Write "</tr>"& VbCrLF End If %> <tr> <td align="center"> <form name="gemKontakt" method="post" action="gem.asp" onSubmit="return tjek(this);"> <table width="400" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="146" class="text10Bold" height="30"> <div align="right">Firma: </div> </td> <td width="254" height="30"> <input type="text" name="fFirma" size="30" maxlength="40" class="formText" style="width:150pt"> </td> </tr> <tr> <td width="146" class="text10Bold" height="30"> <div align="right">Adresse: </div> </td> <td width="254" height="30"> <input type="text" name="fAdresse" size="30" maxlength="50" class="formText" style="width:150pt"> </td> </tr> <tr> <td width="146" class="text10Bold" height="30"> <div align="right">Postnr: </div> </td> <td width="254" height="30"> <input type="text" name="fPostnr" size="10" maxlength="4" class="formText" style="width:50pt"> </td> </tr> <tr> <td width="146" class="text10Bold" height="30"> <div align="right">Kontaktperson: </div> </td> <td width="254" height="30"> <input type="text" name="fPerson" size="30" maxlength="40" class="formText" style="width:150pt"> </td> </tr> <tr> <td width="146" class="text10Bold" height="30"> <div align="right">Stilling: </div> </td> <td width="254" height="30"> <input type="text" name="fStilling" size="30" maxlength="30" class="formText" style="width:150pt"> </td> </tr> <tr> <td width="146" class="text10Bold" height="30"> <div align="right">Telefon: </div> </td> <td width="254" height="30"> <input type="text" name="fTelefon" size="10" maxlength="8" class="formText" style="width:50pt"> </td> </tr> <tr> <td width="146" class="text10Bold" height="30"> <div align="right">E-mail: </div> </td> <td width="254" height="30"> <input type="text" name="fEmail" size="30" maxlength="50" class="formText" style="width:150pt"> </td> </tr> <tr> <td width="146"> </td> <td width="254"> </td> </tr> <tr> <td width="146"> </td> <td width="254"> <input type="submit" name="Submit" value="Submit" class="formButton" onfocus="blur()"> </td> </tr> </table> </form> </td> </tr> </table> </body> </html>
19. april 2002 - 00:17
#5
Dit test script har en: document.gemKontakt.submit(); Prøv at skifte ud med: return true; Eller vi den højst sandsynligt submitte to gange.
19. april 2002 - 00:23
#6
Hvad kan jeg sige - du har løst mit problem.
19. april 2002 - 00:23
#7
Så hvis du laver et svar.
19. april 2002 - 00:24
#8
Det lyder godt :)
Kurser inden for grundlæggende programmering