Hej! HÄr har Du en bra komponent: Detta har jag lekt lite med tidigare, problemet är att jag inte kan få in det på rätt ställe. Samt att jag vet inte hur jag dels skapar en post i databasen samt skickar ett mail. Så om ngn ville titta på min kod och försöka få in det på rätt ställe så vore jag tacksam, jag är aldeless för färsk på detta för att få ihop det. Tacksam för din hjälp! testa de här om det går!? Hurra, nästan... :-) usch det här med if och else är jädrans jobbigt, men man lär sig kanske ngn gång du har glömt att sätta ett <% Nu är detta löst med hjälp av den underbart snälla Ulf Elwing.Hur få mail när inlägg görs..
Har fått ett TODO formulär av en kollega som jag försöker bygga vidare på.
Hur skall jag göra för att få ett mail när ngn lägger in en uppgift, så att man slipper gå till websidan och kontrollera varje dag. Vore kanske bra om uppgitferna står i mailet, men det skulle även funka med "nytt inlägg har gjorts".
Har slitet lite med detta men inte hittat ngt bra sätt. Ngn som kan hjälpa mig?
Här finns min kod http://www.johanrosengren.com/updatedb.txt
Använder Cdonts idag så det är installerat.
Tacksam för förslag och hjälp
/johanSv: Hur få mail när inlägg görs..
<code>
DIM mailer
SET mailer = Server.CreateObject("SMTPsvg.mailer")
mailer.FromName = "Epost"
mailer.FromAddress = "avsändare"
mailer.RemoteHost ="mailserver"
mailer.AddRecipient "Mottagarnamn", "MottagarEpost"
'mailer.AddAttachment FilPath
mailer.Subject = "Ärende"
mailer.BodyText = "Ett nytt inlägg har gjorts "
if mailer.SendMail then
Response.Write ""
else
Response.Write "Mail sent failure. Error was" & Mailer.Response
end if
</code>Sv: Hur få mail när inlägg görs..
Tack JohanSv: Hur få mail när inlägg görs..
Jag håller själv på att lära mig det här..
Eftersom dina värden kommer in på sidan via en request. form
CreatedDate=strSQLFieldEncode(trim(Request.Form("CreatedDate")))
kan du då kanske använda detta i bodyn för e-post meddelandet!
Om du bara vill ha iväg ett mejl när en insert skett, så sätt då ett värde i if-satsen för insert mot databasen!
tex insert_databas = true
kolla sen detta längre ner i koden
tex.
if (insert_databas = true) then
skicka mejl...skriv anropet
end if
Gör det efter execute och se till att din koppling till databasen stängs innan. Tror att det är bättre att stänga kopplingen så fort som möjligt....ngn annan som har en annan uppfattning? Du har den i en include fil...längst ner på sidan!
Det här är en basic lösning, och är säkert full med säkerhets luckor men kanske nåt att börja med i alla fall!? Du bör få iväg ett mejl....
Här har du en länk till Cdonts:
http://www.powerasp.com/content/hintstips/asp-email.asp
evaSv: Hur få mail när inlägg görs..
Håller också på och lär mig :-) men det går segt.......
Det vill sig inte riktigt detta, jag måste tänka helt fel.
För jag får det inte till att funka som jag vill... (jag vill nog rätt men gör fel...)
Får nog experimentera mig fram om ingen har en färdig liten snutt att dela med sig av..
/johanSv: Hur få mail när inlägg görs..
Function strSQLFieldEncode(strIn)
strIn = Replace(strIn,"|","")
strIn = Replace(strIn,"'","''")
strSQLFieldEncode = strIn
End Function
' ----- Läs formulär/QueryString-Data -----
Action=trim(Request.QueryString("Action"))
If Action="" then Action=trim(Request.Form("Action"))
ID=Request.QueryString("ID")
end if'<-- end if?
If ID="" then
ID=Request.Form("ID")
end if'<-- end if
CreatedDate=strSQLFieldEncode(trim(Request.Form("CreatedDate")))' anropar en replace
UpdatedDate=strSQLFieldEncode(trim(Request.Form("UpdatedDate")))
Priority=strSQLFieldEncode(trim(Request.Form("Priority")))
Description=strSQLFieldEncode(trim(Request.Form("Description")))
Status=strSQLFieldEncode(trim(Request.Form("Status")))
Solution=strSQLFieldEncode(trim(Request.Form("Solution")))
Signum=strSQLFieldEncode(trim(Request.Form("Signum")))
Version=strSQLFieldEncode(trim(Request.Form("Version")))
ActionType=strSQLFieldEncode(trim(Request.Form("ActionType")))
Category=strSQLFieldEncode(trim(Request.Form("Category")))
PostedSignum=strSQLFieldEncode(trim(Request.Form("PostedSignum")))
' ----- Skapa SQL-strängar -----
If Action="Spara" then sql="INSERT INTO tblASPDevStatus (CreatedDate, UpdatedDate, Priority, Description, Status, Solution, Signum, Version, ActionType, Category, PostedSignum) VALUES ('" & CreatedDate & "', '" & UpdatedDate & "', '" & Priority & "', '" & Description & "', '" & Status & "', '" & Solution & "', '" & Signum & "', '" & Version & "', '" & ActionType & "', '" & Category & "', '" & PostedSignum & "')"
insert_mot_db=true
elseIf Action="Uppdatera" then sql="UPDATE tblASPDevStatus SET CreatedDate='"& CreatedDate &"', UpdatedDate='"& UpdatedDate &"', Priority='"& Priority &"', ActionType='"& ActionType &"', Description='"& Description &"', Status='"& Status &"', Solution='"& Solution &"', Signum='"& Signum &"', PostedSignum='" & PostedSignum & "', Version='"& Version &"', Category='" & Category & "' WHERE ID=" & ID
isnert_mot_db= true
elseIf Action="Ta bort" then sql="delete from tblASPDevStatus WHERE ID=" & ID
insert_mot_db = true
else
insert_mot_db = false
end if
Set rs = Conn.Execute(sql)
<!--#include file="DbConnClose.asp"-->
if insert_mot_db = true then
Set MyCDONTSMail = CreateObject("CDONTS.NewMail")
MyCDONTSMail.From= "somebody@nowhere.com"
MyCDONTSMail.To= "nobody@nowhere.com"
MyCDONTSMail.Subject="This is a Test"
MyBody = CreatedDate & UpdatedDate & Priority & vbcrlf & Description & Status 'osv...
MyBody = MyBody & "We appretiate your business" & vbCrLf
MyBody = MyBody & "Your stuff will arrive within 7 business days"
MyCDONTSMail.Body= MyBody
MyCDONTSMail.Send
set MyCDONTSMail=nothing
end if
%>
<html>
<head>
<title>Uppdaterar</title>
<link REL=STYLESHEET HREF="Style.css" TYPE="text/css">
<META HTTP-EQUIV="refresh" CONTENT="1; URL=default.asp">
</head>
<body bgcolor="ffffff">
<b>Telefonsystemet - ÅTGÄRDSLISTA</b><br>
Status<br>
<br>
<font size="4">Uppdatera<br></font>
<br>
<b>klart
</b>
</body>
</html>
/evaSv: Hur få mail när inlägg görs..
Det gick inte hela vägen. Först blev det lite fel, men jag ändrade ett % tecken och nu blir det inga fel medd. Men det går inte iväg ngt mail inte heller uppdateras DB.
Här kan du se vad som går fel http://www.johanrosengren.com/todo
koden finns här http://www.johanrosengren.com/updatedb.txtSv: Hur få mail när inlägg görs..
Det här då, går det....?
If Action="Spara" then
sql="INSERT INTO tblASPDevStatus (CreatedDate, UpdatedDate, Priority, Description, Status, Solution, Signum, Version, ActionType, Category, PostedSignum) VALUES ('" & CreatedDate & "', '" & UpdatedDate & "', '" & Priority & "', '" & Description & "', '" & Status & "', '" & Solution & "', '" & Signum & "', '" & Version & "', '" & ActionType & "', '" & Category & "', '" & PostedSignum & "')"
insert_mot_db=true
end if
If Action="Uppdatera" then
sql="UPDATE tblASPDevStatus SET CreatedDate='"& CreatedDate &"', UpdatedDate='"& UpdatedDate &"', Priority='"& Priority &"', ActionType='"& ActionType &"', Description='"& Description &"', Status='"& Status &"', Solution='"& Solution &"', Signum='"& Signum &"', PostedSignum='" & PostedSignum & "', Version='"& Version &"', Category='" & Category & "' WHERE ID=" & ID
insert_mot_db= true
end if
If Action="Ta bort" then
sql="delete from tblASPDevStatus WHERE ID=" & ID
insert_mot_db = true
end if
if Action = "" then
insert_mot_db = false
end if
'lägg i bodyn som en test! kolla vad du får i dessa värden
<%response.write Action & "<br>" & insert_mot_db & "<br>" & sql%>
evaSv: Hur få mail när inlägg görs..
<code>
<!--#include file="DbConnOpen.asp"-->
<% '<---------------------------------- Här saknar du < %
Function strSQLFieldEncode(strIn)
strIn = Replace(strIn,"|","")
strIn = Replace(strIn,"'","''")
strSQLFieldEncode = strIn
End Function
'.............
</code>
Om du inte fixat det redan, men jag testade på din sida och all källkod kommer upp i fönstretSv: Hur få mail när inlägg görs..
TACK ULF!!!