Avatar billede cool_casper Nybegynder
18. marts 2002 - 18:57 Der er 25 kommentarer og
2 løsninger

"En standardegenskab for objektet blev ikke fundet" ?!??!

Hej!

Jeg får en fejl jeg aldrig har set før! Den er som følger:

Fejltype:
Response-objekt, ASP 0185 (0x8002000E)
En standardegenskab for objektet blev ikke fundet.
/visitme/www/nytdesign/services/dato2.asp

Det er ikke mig der har glemt noget, men man får ikke at vide noget linie-tal eller noget, så det er vel en generel fejl på siden?? Resten af dokumenterne på min server kører fint!

Koden er rimelg lang og jeg poster den gerne hvis det skulle være nædvendigt!

//Casper, www.VisitMe.dk
Avatar billede netsrac Praktikant
18. marts 2002 - 19:01 #1
Du bliver jo nok nød til at smide noget kode, ellers er det da hel umuligt.
Avatar billede cool_casper Nybegynder
18. marts 2002 - 19:18 #2
Ja, sure, men det kunne godt være at der var nogle der havde haft fejlen før og liige vidste hvad man skulle gøre....


LIDT KODE
---------------------------------------------------------------------------------

<!--#include file="../admin/closesite.asp" -->

<%
if Request.form("submit") <> "" then
fejl = FAlse
format = Request.form("format")
email = Request.form("changed-email")
nochangeemail = Request.form("nochangeemail")
change = Request.form("change")
nochange = Request.form("nochange")

if change = "on" then
email = nochangeemail
End if

if Email = "" then
Fejl = True
statusstring = "<SPAN CLASS=""red"">Du skal skrive en email adresse!</SPAN>"
End If


datotrue = "True"

strSQL = "UPDATE Users SET Dato=" & datotrue & ", Dato-form='" & format & "', LastEmailSend='" & Now & "'"
'Response.Write strSQL
'Response.End
Set rs = myConn.Execute(strSQL)

brugerSQL = "SELECT Fullname FROM Users WHERE (UserName = '" & Session("VisitMeUserName") &  "')"
set bruger = myConn.Execute(brugerSQL)
FullName = bruger("Fullname")
UserName = Session("VisitMeUserName")

        If NOT fejl then
        IP = Request.ServerVariables("REMOTE_ADDR")
        nu = Now()
        Dato = FormatDateTime(nu,vbLongDate) & " kl. " & FormatDateTime(nu,vbLongTime)
        Set JMail          = Server.CreateObject("JMail.SMTPMail")
       
        JMail.Logging = True
        JMail.Silent = True
       
        JMail.ServerAddress = mailserveradress & ".visitme.dk"
        JMail.Sender        = "robot@visitme.dk"
        JMail.SenderName        = "VisitMe.dk Robot"
        JMail.Subject      = "Dato form fra VisitMe.dk"
        JMail.AddRecipient  email
        JMail.Priority      = 3
       
       
        ' ********** Her starter selve email-en
       
    JMail.Body = "Hej " & BrugerNavn & "!" & VbCrLf
    JMail.Body = JMail.Body & "" & VbCrLf
    JMail.Body = JMail.Body & "Hermed fremsendes din dato-form, som du har oprettet på VisitMe.dk!" & VbCrLf
    JMail.Body = JMail.Body & "Den kode du skal indsætte på din egen side er:" & VbCrLf
    JMail.Body = JMail.Body & "" & VbCrLf
    JMail.Body = JMail.Body & "<SCRIPT SRC=""http://www.visitme.dk/service/dato.asp?bruger=" & Lcase(UserName) & "></SCRIPT>" & VbCrLf
    JMail.Body = JMail.Body & "" & VbCrLf
    JMail.Body = JMail.Body & "" & VbCrLf
    JMail.Body = JMail.Body & "Med Venlig Hilsen" & VbCrLf
    JMail.Body = JMail.Body & "" & VbCrLf
    JMail.Body = JMail.Body & "VisitMe.dk" & VbCrLf
    JMail.Body = JMail.Body & "webmaster@visitme.dk" & VbCrLf
    JMail.Body = JMail.Body & "" & VbCrLf
    JMail.Body = JMail.Body & "" & VbCrLf
    JMail.Body = JMail.Body & "Denne mail kan ikke besvares, da den bliver sendt af en mailrobot!" & VbcrLf
    JMail.Body = JMail.Body & "Skulle der evt. være problemer eller kommentarer kan de kontakte: webmaster@visitme.dk" & VbCrLf
   

    JMail.HTMLBody = "<html><head><SCRIPT>function copyit(theField) {var tempval=eval(""document.""+theField)tempval.focus()tempval.select()therange=tempval.createTextRange()therange.execCommand(""Copy"")}</SCRIPT><STYLE>A {    color : #3372D0;    font-family : Verdana;}.gray {    color : #999999;    font-family : Verdana;}A:HOVER {    color : #225095;    font-family : Verdana;}.code {    color : Black;    font-family : Verdana;    font-size : 12px;    border-bottom : 1px solid Black;    border-right : 1px solid Black;    border-top : 1px solid Black;    border-left : 1px solid Black;    background-color : #DBE6F7;    text-decoration : none;}</STYLE></head><body bgcolor=""#FFFFFF"" text=""#000000""><table width=""100%"" border=""0"" cellspacing="""" cellpadding="""">  <tr>    <td><font size=""2"" face=""Verdana"" color=""#000000""> Hej " & FuldeNavn&      "! <br>      <br>      Hermed fremsendes din dato-form, som du har oprettet på VisitMe.dk!<BR>      Den kode du skal indsætte på din egen side er:<br>      <br>      <FORM NAME=""form"">      <table width=""200"" border=""0"" cellspacing="""" cellpadding="""" STYLE=""border: 1px solid Black;"">          <TR>            <TD colspan=""2"">              <TEXTAREA NAME=""scriptbox3"" READONLY SCROLL=""no"" class=""code"" STYLE=""overflow: auto;"" cols=""60"" rows=""3""><SCRIPT SRC=""http://www.visitme.dk/service/dato.asp?user=" & UserName & """></SCRIPT></TEXTAREA>            </TD>          </TR>          <TR>            <TD colspan=""2"" align=""center""><A HREF=""java script:void(0)"" OnClick=""copyit('form.scriptbox3')"">Kopier              til Udklipsholder!</A></TD>          </TR>      </table>      </FORM>      <br>      <br>      <i>Med Venlig Hilsen</i><br>      <br>      VisitMe.dk <br>      <A HREF=""mailto:webmaster@visitme.dk"">webmaster@visitme.dk</A> </font>      <br>      <br>      <HR WIDTH=""85%"" SIZE=0>      <div align=""center""><font size=""1"" face=""Verdana"" color=""#999999"">        Denne mail kan ikke besvares, da den bliver sendt af en mailrobot!<br>        Skulle der evt. være problemer eller kommentarer kan de kontakte: <A CLASS=""gray"" HREF=""mailto:webmaster@visitme.dk"">webmaster@visitme.dk</A></font></div>    </td>  </tr></table></body></html>"



            ' ********** Her slutter selve email-en
       
          If Not JMail.Execute Then
        Statusstring = "<SPAN CLASS=""red"">Der er sket en fejl!</SPAN><BR>Du bedes kontakte webmasteren direkte på <A HREF=""mailto:webmaster@visitme.dk"">webmaster@visitme.dk</A> og nævne at der er sket en fejl ved afsendelse af mail'en!" '& JMail.Log
          Else
        Statusstring = "<SPAN CLASS=""green"">Koden er nu sendt til din email adresse!</SPAN>"
          End If

ENd If
End If


emailSQL = "SELECT Email FROM Users WHERE (UserName = '" & Session("VisitMeUserName") &  "')"
Set email = myConn.Execute(emailSQL)
bEmail = email("EMail")

%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="STYLESHEET" type="text/css" href="../style.css">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<TABLE WIDTH="100%"><TR><TD>
<CENTER><SPAN CLASS="overskrift">Dato</SPAN></CENTER><P></TD><TR>
<TR><TD>
<SPAN CLASS="bodytext">Nu mangler du bare at vælge den email adresse koden skal sendes til:
<br><br>
<FORM ACTION="dato2.asp?format=" METHOD="POST" NAME="form1">
<INPUT TYPE="hidden" NAME="submit" VALUE="juhu">
<INPUT TYPE="hidden" NAME="format" VALUE="<%=Request.QueryString("format")%>">
<INPUT TYPE="hidden" NAME="nochangeemail" VALUE="<%=bEmail%>">
<table width="100%" border="0" cellspacing="0" cellpadding="0" CLASS="bodytext">
  <tr>
    <td><INPUT TYPE="radio" name="email" value="nochange" CHECKED></td>
    <td>Din Email adresse er: <b><%= Email %></b>!<br>
Hvis du vil sende dit script til en anden email adresse skal du skrive den nedenunder!<br>
<br>
</td>
  </tr>
  <tr>
    <td><INPUT TYPE="radio" name="email" value="change"></td>
    <td>Email: <input type="text" name="changed-email" OnFocus="document.form1.email[1].checked=true">
</td>
  </tr>

  <tr>
    <td colspan="2"><br>
<br>
&nbsp;<INPUT TYPE="submit" value="Send! 2/2"></td>
  </tr>
  <tr>
    <td colspan="2"><br><%= Statusstring %></td>
  </tr>
</table>
</FORM>
</SPAN>
</TD></TR>
</TABLE>
</body>
</html>
<%
Function validateEmailAddress (strEmailAddr)
    Const DOMAIN_CHARACTERS = ".ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890-"
    Dim strEmailAddrToValidate, strDomain, strUserName, intStart

    strEmailAddrToValidate = Trim(strEmailAddr)

    If strEmailAddrToValidate = "" Then                ' Make sure not blank
        validateEmailAddress = False
        Exit Function
    ElseIf Len(strEmailAddrToValidate) > 256 Then  ' Max number of chars for email addr is 256
        validateEmailAddress = False
        Exit Function
    ElseIf Len(strEmailAddrToValidate) < 6 Then        ' Min number of chars for email addr is 6
        validateEmailAddress = False
        Exit Function
    End If
       
    ' Check for more than one "@"
    If Not UBound(Split(strEmailAddrToValidate, "@")) = 1 Then
        validateEmailAddress = False
        Exit Function
    End If
   
    ' Check that at least one "." exists after "@"
    Dim aryTestAfterAt
    aryTestAfterAt = Split(strEmailAddrToValidate, "@")
    If InStr(aryTestAfterAt(1), ".") = 0 Then
        validateEmailAddress = False
        Exit Function
    End If
   
    ' Check that "@" is not the last character
    If Len(strEmailAddrToValidate) = InStr(strEmailAddrToValidate, "@") Then
        validateEmailAddress = False
        Exit function
    End if 
   
    ' Check for at least one "." and make sure not empty or "@" between   
    If Not UBound(Split(strEmailAddrToValidate, ".")) > 0 Then
        validateEmailAddress = False
        Exit Function
    Else
        For Each item In Split(strEmailAddrToValidate, ".")
            If Trim(item) = "" Then
                validateEmailAddress = False
                Exit function
            End If
            If Trim(item) = "@" Then
                validateEmailAddress = False
                Exit function
            End If
            If Trim(item) = "" OR Trim(item) = "@" Then
                validateEmailAddress = False
                Exit function
            End If
        Next
    End If
   
    ' Get domain from email address
      strDomain = UCase(Mid(strEmailAddrToValidate, InStr(strEmailAddrToValidate, "@") + 1))       
      intStart  = 1
     
      ' Check last part of domain doesn't have more than 4 charcters
      Dim aryDomain
      aryDomain = Split(strDomain, ".")
           
      If Len(aryDomain(UBound(aryDomain))) < 2 OR Len(aryDomain(UBound(aryDomain))) > 4 Then
        validateEmailAddress = False
        Exit function
      End If
     
      ' Check for valid characters in domain
      Do While intStart <= Len(strDomain)
        If InStr(DOMAIN_CHARACTERS, Mid(strDomain, intStart, 1)) Then
            intStart = intStart + 1
        Else
              validateEmailAddress = False
            Exit function
        End If
    Loop
   
    ' Check for valid characters in user name
    strUserName = UCase(Left(strEmailAddrToValidate, InStr(strEmailAddrToValidate, "@") - 1))
    intStart  = 1
   
    Do While intStart <= Len(strUserName)
        If InStr(DOMAIN_CHARACTERS, Mid(strUserName, intStart, 1)) Then
            intStart = intStart + 1
        Else
              validateEmailAddress = False
            Exit function
        End If
    Loop
   
    ' OK email address is validated
    validateEmailAddress = True
End Function
%>

---------------------------------------------------------------------------------
Avatar billede netsrac Praktikant
18. marts 2002 - 19:24 #3
Hm..og det er hele koden ?
Avatar billede cool_casper Nybegynder
18. marts 2002 - 19:26 #4
Ja, uden includes, selvfølgelig.....
Avatar billede netsrac Praktikant
18. marts 2002 - 19:30 #5
Mystisk, synes ikke rigtig jeg kan se nogen fejl.
Avatar billede cool_casper Nybegynder
18. marts 2002 - 19:36 #6
He he... Det kan jeg heller ikke og det er derfor jeg er lidt (meget) forvirret!! =)
Avatar billede cool_casper Nybegynder
18. marts 2002 - 19:40 #7
I en søgning fandt jeg dette: http://p2p.wrox.com/archive/asp_databases/2001-03/106.asp

Men jeg har stadig ikke fundet ud af hvad fejlen går ud på! :(
Avatar billede coltau Juniormester
18. marts 2002 - 20:27 #8
Jeg kender ikke fejlen - men jeg er en haj til fejlfinding.

1. Hvis det har virket og du umiddelbart har rettet noget - så er fejlen der.
2. Tag en kopi af koden og start fjern alle linier pånær 10. Prøv dem og se om fejlen kommer. Derefter tilføjer du 10 af gangen. Du vil selvfølgelig få andre fejl fordi der pludselig mangler linier - men de ignoreres.

Det lyder måske dumt - men det er yderst effektivt når man skal indkredse en fejl.
Avatar billede cool_casper Nybegynder
18. marts 2002 - 20:53 #9
Jeg rettede vist noget meget simpelt,( kan ikke rigtig huske det!:( ) men det kan da være det ligger der... For det virkede før....

Jeg forstår dig ikke helt, hvis jeg tager der 10 første linier, er der jo ingen ting der virker....! Så vil den da for alvor give fejl! Hvis jeg satte dette ind i en ny fil:

<!--#include file="../admin/closesite.asp" -->

<%
if Request.form("submit") <> "" then
fejl = FAlse
format = Request.form("format")
email = Request.form("changed-email")
nochangeemail = Request.form("nochangeemail")
change = Request.form("change")
nochange = Request.form("nochange")

Så vil fejlen jo formodentlig være "Expected 'End'"!! FOrstår dig vist ikke helt...
Avatar billede coltau Juniormester
18. marts 2002 - 21:17 #10
Ja %> skal jo på hver gang - men det jeg mener er at du skal teste siden 10 linier af gangen indtil din fejl kommer - så ved du hvilken linie det er i.

Jeg kikker lige koden igennem - men kan sikkert ikke finde noget.
Avatar billede cool_casper Nybegynder
18. marts 2002 - 21:19 #11
Hmmm... Hvad med den her:

datotrue = "True"

strSQL = "UPDATE Users SET Dato=" & datotrue & ", Dato-form='" & format & "', LastEmailSend='" & Now & "'"

Feltet "Dato" er i databasen et Ja/Nej-felt! Kan det passe at der er sådan det skal være...??
Avatar billede netsrac Praktikant
18. marts 2002 - 21:22 #12
Hm...når jeg kigger lidt på dit link, ser jeg pludselig en fejl:

strSQL = "UPDATE Users SET Dato=" & datotrue & ", Dato-form='" & format & "', LastEmailSend='" & Now & "'"
'Response.Write strSQL
'Response.End
Set rs = myConn.Execute(strSQL)

En UPDATE sql giver ikke noget recordsæt tilbage, så det skal bare være:

strSQL = "UPDATE Users SET Dato=" & datotrue & ", Dato-form='" & format & "', LastEmailSend='" & Now & "'"
'Response.Write strSQL
'Response.End
myConn.Execute(strSQL)
Avatar billede netsrac Praktikant
18. marts 2002 - 21:24 #13
og hvis det er et Ja/nej felt skal du bruge værdien 1 for ja og værdien -1 for nej
Avatar billede cool_casper Nybegynder
18. marts 2002 - 21:29 #14
Sådan her??: (Virker nemlig ikke!)

datotrue = "1"

strSQL = "UPDATE Users SET Dato=" & datotrue & ", Dato-form='" & format & "', LastEmailSend='" & Now & "'"
'Response.Write strSQL
'Response.End
myConn.Execute(strSQL)
Avatar billede cool_casper Nybegynder
18. marts 2002 - 21:30 #15
Fejl:
"Der er en syntaksfejl i UPDATE-sætningen."
Avatar billede netsrac Praktikant
18. marts 2002 - 21:33 #16
Hvad med Dato-form ? og lastEmailSend  ?
Avatar billede cool_casper Nybegynder
18. marts 2002 - 21:37 #17
he he... Tror godt jeg ved der er galt... Ordner det lige....
Imens kan du vel bikse den her:

Det er den der giver "En standardegenskab for objektet blev ikke fundet.":

emailSQL = "SELECT Email FROM Users WHERE (UserName = '" & Session("VisitMeUserName") &  "')"
Set email = myConn.Execute(emailSQL)
brugerEmail = email("Email")
Avatar billede netsrac Praktikant
18. marts 2002 - 21:40 #18
Hm...er det virkelig den der giver den uderlige fejl ? Det ser da ellers god nok ud..
Avatar billede cool_casper Nybegynder
18. marts 2002 - 21:43 #19
Ja, den fucker helt up.... Der kommer alle mulige fejl nu!
Genstarter lige min tester-server og min egen maskine.. To sek...
Avatar billede cool_casper Nybegynder
18. marts 2002 - 22:03 #20
OK! Nu burde det meste være rettet, men den eneste fejl der er tilbage er:

Der er en syntaksfejl i UPDATE-sætningen.

Min SQL:

UPDATE Users SET Dato=1, Dato-form='2,0', LastEmailSend='18-03-2002 22:01:57' WHERE (Email = 'casper@visitme.dk')

Dato : Ja/Nej
Dato-form: Tekst
LastEmailSend: Tekst
Email: Tekst
Avatar billede netsrac Praktikant
18. marts 2002 - 22:07 #21
Prøv at tage et felt af gangen, og se hvor fejlen opstår f.eks:

UPDATE Users SET Dato=1 WHERE (Email = 'casper@visitme.dk')

og

UPDATE Users SET Dato-form='2,0' WHERE (Email = 'casper@visitme.dk')

Det er en af de 3 felter som ikke godtager den data der kommer ind.
Avatar billede cool_casper Nybegynder
18. marts 2002 - 22:11 #22
Nå, ja! Du er ikke helt dum til det der med debugging! =))
Avatar billede cool_casper Nybegynder
18. marts 2002 - 22:19 #23
Yeyyyyhhaaa!!! Så funker det.....! Tak skal I have...
Det bliver til 15 til hver....!

Carsten >> Smid lige et svar!
Avatar billede netsrac Praktikant
18. marts 2002 - 22:23 #24
Svar :)
Avatar billede cool_casper Nybegynder
18. marts 2002 - 22:25 #25
Endnu en gang tak!
Avatar billede netsrac Praktikant
18. marts 2002 - 22:28 #26
Så meget *he he*
Avatar billede cool_casper Nybegynder
18. marts 2002 - 22:31 #27
*SS*
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester