Hej...jag har ett litet problem på en shop som jag undrar om nån skulle kunna vara jätte snäll och hjälpa mig med...det är så att ett mejl ska skickas iväg till kunden som en bekfräftelse och sedan vill även jag ha ett mejl med ordern och jag undrar hur jag ska göra detta...om nån ville hjälpa mig? här kommer koden: Det beror ju helt på HUR mailet ska skickas.Order
<% Option Explicit ' Vi vill ha koll på våra variabler
%><!--#include file="prevent_cache.asp"--><!--#include file="connection.asp"--><!--#include file="functions.asp"--><%
Dim numRecords, v
Dim basket, TotalPrice
Dim Details ' En orderbekräftelse som kan mailas till kunden!
IF Session("shCustomerID") = "" THEN
Response.Redirect "shCustomerLogin.asp": response.end
end if
basket = Request.Form("basket") ' Nu hämtar vi korgen från formuläret!
Dim a, itemsInBasket, One
' Vi hämtar ut alla varors ID-nummer till en kommaseparerad sträng
IF basket<>"" THEN
a = Split(basket, "|")
For Each One in a
If itemsInBasket <> "" THEN itemsInBasket = itemsInBasket & ","
itemsInBasket = itemsInBasket & Mid(one, 2, InStr(one, "]")-2)
next
End If
' Vi börjar skriva på mailet
Details = "Hej " & Session("shCustomerFname") & vbcrlf & vbcrlf & _
"Här kommer en bekräftelse på din beställning hos AFFÄRNAMN."
Details = Details & VbCrLf & VbCrLf & "Datum:........" & Now() & vbcrlf & _
"Namn:........." & Session("shCustomerFname") & " " & Session("shCustomerLname") & vbcrlf & _
"PostAdress:..." & Request.Form("postalcode") & " " & Request.Form("address") & vbcrlf & _
"E-post:......." & Request.Form("email") & vbcrlf & _
"Telefon:......" & Request.Form("phone") & vbcrlf & vbcrlf
'***** Vi loopar igenom varorna i korgen och lägger prydligt in dem i mailet...
Set Rs = Server.CreateObject("ADODB.RecordSet")
Rs.Open "SELECT * FROM shItems WHERE id IN (" & itemsInBasket & ")",Conn,1,1
Dim noItems
Dim tmp
if not rs.eof then
numRecords = Rs.RecordCount-1
'BackgroundColor = "#EEEEEE"
' funktionen printColumn() finns i functions.asp
Details = Details & printColumn( "#" , 3) & _
printColumn( "Vara", 28) & _
printColumn("á pris", 10) & _
"Summa" & vbcrlf
for v= 0 to numRecords
tmp = printColumn( Rs.Fields("title").Value, 28)
Details = Details & printColumn( itemCount(Rs.Fields("id").Value,false), 3) & _
printColumn( Rs.Fields("title").Value, 28) & _
printColumn(Rs.Fields("price").Value, 10) & _
(itemCount(Rs.Fields("id").Value,false) * Rs.Fields("price").Value )
Details = Details & vbcrlf
TotalPrice = TotalPrice + itemCount( Rs.Fields("id").Value, False) * Rs.Fields("price").Value
Rs.MoveNext
next
Details = Details & vbcrlF & "Total summa: " & TotalPrice
end if
Rs.Close
Details = Details & vbcrlf &"Priserna är inklusive moms. Frakt tillkommer."
Details = Details & vbcrlf & vbcrlf & "Välkommen tillbaka till vår hemsida" & vbcrlf & " http://www.vårhemsida.com"
'**** Details är färdig att mailas. Detta ska dock inte göras förrän orden finns i databasen.
' I variabeln email finns kundens e-post adress
' Ta bort kommentaren på följande linje för att se mailet.
'Response.write "<PRE>" & Details & "</PRE>" : Response.End
Dim address, postalcode, city
Dim SQL
address = FormatSQL(Request.Form("address"))
postalcode = FormatSQL(Request.Form("postalcode"))
city = FormatSQL(Request.Form("city"))
SQL = "INSERT INTO shOrders (address,postalcode,city,customer,basket,orderDetails,[date],sum) VALUES ("
SQL = SQL & "'" & address & "', '" & postalcode & "', '" & city & "', " & Session("shCustomerID") & ", " & _
"'" & basket & "', '" & FormatSQL( Details ) & "', '" & Now() & "','" & TotalPrice & "') "
'response.write SQL
'response.end
Conn.Execute SQL
Set Rs = Conn.Execute("SELECT @@IDENTITY as last_inserted_id")
IF Not Rs.Eof Then
Dim last_inserted_id
last_inserted_id = Rs.Fields(0).Value
Conn.Close
Session("basket") = ""
' Här är rätt tillfälle att skicka en bekräftelse via mail!
Response.Redirect "shViewOrder.asp?id=" & last_inserted_id
Response.End
Else
Response.Write "Ett fel uppstod... Här kan man ju hoppa till en annan sida.... :)"
End If
Conn.Close
Set Rs = Nothing
Set Conn = Nothing
%>
mkt tacksam för hjälp Sv: Order
Körs detta på din server eller webbhotell?
Är CDONTS, JMail eller dylikt installerat/aktiverat?
CDONTS: http://www.pellesoft.se/login/articles/asp/cdonts.asp
JMail:<code><%
Dim objJMail 'Holds the JMail Object
Set objJMail = Server.CreateObject("JMail.SMTPMail") 'Create the e-mail server object
objJMail.ServerAddress = "smtp.dinmailserver.se:25" 'Out going SMTP mail server address
objJMail.Sender = "din@adress.nu" 'Senders email address
objJMail.SenderName = "Ditt Namn" 'Senders name
objJMail.AddRecipient "mail@adress.nu" 'Who the email is sent to
'objJMail.AddRecipientCC = "kopia@adress.nu" 'Who the carbon copies are sent to
'objJMail.AddRecipientBCC = "hemlig@adress.nu" 'Who the blind copies are sent to
objJMail.Subject = "Ditt subject" 'Set the subject of the e-mail
'objJMail.Body = "Hej!" & vbCrLf & "Detta är din text" ' Body in Plain Text format
objJMail.HTMLBody = "<h2>Hej!</h2><br><b>Detta är din text</b>" 'Body in HTML format
objJMail.Priority = 3 'Importance of the e-mail (5=Low, 3=Normal, 1=High)
objJMail.Execute 'Send the e-mail
Set objJMail = Nothing 'Close the server object
%></code>
Och sedan får du lägga in din details-variabel på lämplig plats i skriptet