Hey Kat.
This would work on the servers running with local mail server installed (old windows servers), the latest windows servers use remote Mail-Server called Smarter Mail which must need SMTP authentication to send emails out via code; one will have to use SMTP-Authentication which means to use an actual email address and its password in the code to send emails out, hence any emails being sent out from the webapplications in PHP/Perl/ASP/ASP.net need the SMTP verification to be done prior to the mail() command in PHP with any email account, created from Plesk's "Remote Email" section.
The smtp verification can be done either with smtp server address "mail.your-domain.com" if you are using asp.net please use CDOSYS (with SMTP authentication) and if you are using PHP please use php-pear module. Samples of both codes are provided below:
---Pear module with Smtp-auth----
require_once "Mail.php";
$from = "<
you@your.com>";
$to = "Waqas <
m.waqas@lunarpages.com>";
$subject = "Hi!";
$body = "Hi,\n\nHow are you?";
$host = "mail.your.com";
$username = "
you@your.com";
$password = "
pass_of_you@your.com";
$headers = array ('From' => $from,
'To' => $to,
'Subject' => $subject);
$smtp = Mail::factory('smtp',
array ('host' => $host,
'auth' => true,
'username' => $username,
'password' => $password));
$mail = $smtp->send($to, $headers, $body);
if (PEAR::isError($mail)) {
echo("<p>" . $mail->getMessage() . "</p>");
} else {
echo("<p>Message successfully sent!</p>");
}
Here is a working example of -----------====CDOSYS====---------- without the opening ASP tags:
Const cdoSendUsingPickup = 1 'Send message using the local SMTP service pickup directory.
Const cdoSendUsingPort = 2 'Send the message using the network (SMTP over the network).
Const cdoAnonymous = 0 'Do not authenticate
Const cdoBasic = 1 'basic (clear-text) authentication
Const cdoNTLM = 2 'NTLM
Set objMessage = Server.CreateObject("CDO.Message")
objMessage.Subject = "Example CDO Message"
objMessage.Sender = "
me@mydomain.com"
objMessage.From = "
me@mydomain.com"
objMessage.To = "
recipient@test.com"
objMessage.TextBody = "This is some sample message text.." & vbCRLF & "It was sent using SMTP authentication."
'==This section provides the configuration information for the remote SMTP server.
objMessage.Configuration.Fields.Item _
("
http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
'Name or IP of Remote SMTP Server
objMessage.Configuration.Fields.Item _
("
http://schemas.microsoft.com/cdo/configuration/smtpserver") = "mail.your.com"
'Type of authentication, NONE, Basic (Base64 encoded), NTLM
objMessage.Configuration.Fields.Item _
("
http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = cdoBasic
'Your UserID on the SMTP server
objMessage.Configuration.Fields.Item _
("
http://schemas.microsoft.com/cdo/configuration/sendusername") = "
you@your.com"
'Your password on the SMTP server
objMessage.Configuration.Fields.Item _
("
http://schemas.microsoft.com/cdo/configuration/sendpassword") = "
password_of_you@your.com"
'Server port (typically 25)
objMessage.Configuration.Fields.Item _
("
http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 587
'Use SSL for the connection (False or True)
objMessage.Configuration.Fields.Item _
("
http://schemas.microsoft.com/cdo/configuration/smtpusessl") = False
'Connection Timeout in seconds (the maximum time CDO will try to establish a connection to the SMTP server)
objMessage.Configuration.Fields.Item _
("
http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60
objMessage.Configuration.Fields.Update
objMessage.Send