Avatar billede l_otto Nybegynder
18. december 2009 - 12:34 Der er 12 kommentarer og
1 løsning

Konverter CDO kode til Jmail

Hej..

Da jeg har skiftet webhotel og de understøtter Jmail ikke CDo skal jeg lige konvertere følgende over til Jmail men det går ikke så godt.. håber en kan hjælpe

set rs = DataConn.Execute("SELECT @@IDENTITY AS nytID")
if not rs.eof then
  nytID = rs("nytID")
else
  nytID = 0
end if
rs.close

if nytID > 0 then

if Request.Form("adresse") <> "" then
  Set JMail = Server.CreateObject ("JMail.SMTPMail")

  ' Her sættes afsender navn og e-mail adresse

  ' Afsenders mailserver RETTES TIL
  JMail.ServerAddress = "localhost"

JMail.Sender = "mig@mig.dk"

  ' Her sættes modtager navn og e-mail adresse
  JMail.To =  Request.Form("email")

  ' Her sættes overskriften på mailen
  JMail.Subject    = "Ny mail"
JMail.Body.BodyFormat = 0
JMail.Body = "<html><body> Hej med jer</body></html>"
' Send e-mail og skriv status
JMail.Execut
response.write "<br><br>brugeren er oprettet.<br>"
End if 'stopper koden her
%>

Ligenu vil den have en END længere nede i koden men hvad skriver jeg forkert her ??
Avatar billede keysersoze Guru
18. december 2009 - 12:36 #1
Prøv at gøre helt som fejlen fortæller dig - altså sæt en "end if" lige under din nederste end if. Du mangler nemlig at afslutte end if.
Avatar billede l_otto Nybegynder
18. december 2009 - 12:42 #2
response.write "<br><br>brugeren er oprettet.<br>"
End if
End If

Giver samme fejl

Microsoft VBScript compilation  error '800a03f6'

Expected 'End'

opretbruger.asp, line 226
Avatar billede keysersoze Guru
18. december 2009 - 13:01 #3
først skal du sørge for at kigge en ekstra gang på jmail eksemplerne - der er i hvert fald ikke noget der hedder "Execut".

Prøv at kom med hele din kode - ovenstående ligner kun et udsnit.
Avatar billede l_otto Nybegynder
18. december 2009 - 13:04 #4
<%
if request.form("send") <> "" then

strSQL = "Insert into tilmeldingl (DateKolonne ,id,efternavn, forfos1, for2, forfos2, adresse, postnr, fby, telefon, email, fornavn, dato, konto, reg,holdnr, pris) values(now(),'" & replace(Request.Form("id"),"'","''") & "','" & replace(Request.Form("efternavn"),"'","''") & "','" & replace(Request.Form("forfos1"),"'","''") & "','" & replace(Request.Form("for2"),"'","''") & "','" & replace(Request.Form("forfos2"),"'","''") & "','" & replace(Request.Form("adresse"),"'","''") & "','" & replace(Request.Form("postnr"),"'","''") & "','" & replace(Request.Form("fby"),"'","''") & "','" & replace(Request.Form("telefon"),"'","''") & "','" & replace(Request.Form("email"),"'","''") & "','" & replace(Request.Form("fornavn"),"'","''") & "','" & replace(Request.Form("dato"),"'","''") & "','" & replace(Request.Form("konto"),"'","''") & "','" & replace(Request.Form("reg"),"'","''") & "','" & holdnummer & "','" & pris & "'  )"
DataConn.Execute(strSQL)

set rs = DataConn.Execute("SELECT @@IDENTITY AS nytID")
if not rs.eof then
  nytID = rs("nytID")
else
  nytID = 0
end if
rs.close

if nytID > 0 then

if Request.Form("adresse") <> "" then
  Set JMail = Server.CreateObject ("JMail.SMTPMail")

  ' Her sættes afsender navn og e-mail adresse

  ' Afsenders mailserver RETTES TIL
  JMail.ServerAddress = "localhost"

JMail.Sender = "mig@mig.dk"

  ' Her sættes modtager navn og e-mail adresse
  JMail.To =  Request.Form("email")

  ' Her sættes overskriften på mailen
  JMail.Subject    = "Ny mail"
JMail.Body.BodyFormat = 0
JMail.Body = "<html><body> Hej med jer</body></html>"
' Send e-mail og skriv status
response.write "<br><br>brugeren er oprettet.<br>"
End if
End If
%>
Avatar billede keysersoze Guru
18. december 2009 - 13:20 #5
Du mangler også stadig at afslutte en if - så du mangler en end if. Du skal ikke fjerne din "Execut" - bare sørge for at stave det rigtigt, nemlig "Execute", ellers kommer der ingen mail frem..
Avatar billede l_otto Nybegynder
18. december 2009 - 13:47 #6
jeg kan ikke få den endif til at virker kan du rette koden så den står rigtigt, tak
Avatar billede keysersoze Guru
18. december 2009 - 14:06 #7
sæt en end if mere under de 2 nederste du har.
Avatar billede l_otto Nybegynder
18. december 2009 - 14:10 #8
perfekt

Når jeg så prøver at oprette en bruger kommer denne fejl

Microsoft VBScript runtime  error '800a000d'

Type mismatch

opretbruger.asp, line 95

Her er linie 95

if nytID > 0 then
Avatar billede keysersoze Guru
18. december 2009 - 14:19 #9
Som fejlen siger så er der bøvl med datatyperne - formentlig fordi du sammenligner en string med en int.

Prøv fx

if cint(nytID) > 0 then
Avatar billede l_otto Nybegynder
18. december 2009 - 14:29 #10
perfekt igen

nu siger den

Microsoft VBScript runtime  error '800a01b6'

Object doesn't support this property or method: 'JMail.AddRecipient'


JMail.ServerAddress = "localhost"

JMail.Sender = "mig@mig.dk"

  ' Her sættes modtager navn og e-mail adresse
  JMail.AddRecipient =  Request.Form("email")

  ' Her sættes overskriften på mailen
  JMail.Subject    = "Ny mail"
JMail.Body.BodyFormat = 0
JMail.Body = "<html><body> Hej med jer</body></html>"
' Send e-mail og skriv status
JMail.Execute
response.write "<br><br>brugeren er oprettet.<br>"


det burde da virke
Avatar billede keysersoze Guru
18. december 2009 - 14:43 #11
JMail.AddRecipient Request.Form("email")
Avatar billede l_otto Nybegynder
18. december 2009 - 15:09 #12
så er der point til den gode keyser
Avatar billede keysersoze Guru
19. december 2009 - 11:14 #13
svar :)
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