Hello! I am using the version OpenCart v1.3.2 and host UolHost and I having great problem in the system of sending e-mails. I can not configure it correctly. How should I proceed?
Sorry for my English.I wait for response.
Regards, HMídia.com
Sorry for my English.I wait for response.
Regards, HMídia.com
Hi hmidia,
What errors are you receiving when you tried to set it up?
Kevin.
What errors are you receiving when you tried to set it up?
Kevin.
Kevin Davidson
Purolator Shipping Module
Canpar Shipping Module
VQMod - Paypal Transaction ID to Payment Details
Hello Kevin,
When I try configure using MAIL:
When I try to configure does not appear any error, but when I register a new User, confirm the User or try to send e-mail to someone no e-mail is sent to the address.
When I try configure using SMTP:
The urls of my shop is http://www.pistilosprimor.com.br
I waiting for help.
Att. HMídia.com
When I try configure using MAIL:
When I try to configure does not appear any error, but when I register a new User, confirm the User or try to send e-mail to someone no e-mail is sent to the address.
When I try configure using SMTP:
Code: Select all
Warning: fsockopen() [function.fsockopen]: unable to connect to smtp.gmail.com:465 (A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond. ) in E:\home\pistilospr\Web\loja\system\library\mail.php on line 141Error: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond. (10060)
I waiting for help.
Att. HMídia.com
try
3. 'protocol' => 'smtp',
4. 'smtp_host' => 'ssl://smtp.googlemail.com',
5. 'smtp_port' => 465,
6. 'smtp_user' => 'gmail.login@googlemail.com',
7. 'smtp_pass' => 'your_password',
3. 'protocol' => 'smtp',
4. 'smtp_host' => 'ssl://smtp.googlemail.com',
5. 'smtp_port' => 465,
6. 'smtp_user' => 'gmail.login@googlemail.com',
7. 'smtp_pass' => 'your_password',
OpenCart®
Project Owner & Developer.
My SSL is off.
I try using the configuration that you told me but dont work. Return the error:
Please, help me!
I try using the configuration that you told me but dont work. Return the error:
Code: Select all
Warning: fsockopen() [function.fsockopen]: unable to connect to ssl://smtp.googlemail.com:465 (A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond. ) in E:\home\pistilospr\Web\loja\system\library\mail.php on line 141Error: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond. (10060)
Can't see anything wrong with those settings.
You need to find a email provider that does not require ssl.
If I remember correctly Hotpop (free email service) does not require it. By the way it is worth contacting your host because they should provide a stmp server with your account - all the hosts I have been with have done this for me.
You need to find a email provider that does not require ssl.
If I remember correctly Hotpop (free email service) does not require it. By the way it is worth contacting your host because they should provide a stmp server with your account - all the hosts I have been with have done this for me.
New member
You need SSL to send emails via gmail.
Replace the mail class with this:
Replace the mail class with this:
Code: Select all
<?php
final class Mail {
protected $to;
protected $from;
protected $sender;
protected $subject;
protected $text;
protected $html;
protected $attachments = array();
protected $protocol = 'mail';
protected $hostname;
protected $username;
protected $password;
protected $port = 25;
protected $timeout = 5;
public $charset = 'utf-8';
public $eol = "\r\n";
public function __construct($protocol = 'mail', $hostname = '', $username = '', $password = '', $port = '25', $timeout = '5') {
$this->protocol = $protocol;
$this->hostname = $hostname;
$this->username = $username;
$this->password = $password;
$this->port = $port;
$this->timeout = $timeout;
}
public function setTo($to) {
$this->to = $to;
}
public function setFrom($from) {
$this->from = $from;
}
public function addheader($header, $value) {
$this->headers[$header] = $value;
}
public function setSender($sender) {
$this->sender = $sender;
}
public function setSubject($subject) {
$this->subject = $subject;
}
public function setText($text) {
$this->text = $text;
}
public function setHtml($html) {
$this->html = $html;
}
public function addAttachment($attachments) {
$this->attachments[] = $attachments;
}
public function send() {
if (!$this->to) {
exit('Error: E-Mail to required!');
}
if (!$this->from) {
exit('Error: E-Mail from required!');
}
if (!$this->sender) {
exit('Error: E-Mail sender required!');
}
if (!$this->subject) {
exit('Error: E-Mail subject required!');
}
if ((!$this->text) && (!$this->html)) {
exit('Error: E-Mail message required!');
}
if (is_array($this->to)) {
$to = implode(',', $this->to);
} else {
$to = $this->to;
}
$boundary = '----=_NextPart_' . md5(rand());
$header = '';
if ($this->protocol != 'mail') {
$header .= 'To: ' . $to . $this->eol;
$header .= 'Subject: ' . $this->subject . $this->eol;
}
$header .= 'From: ' . $this->sender . '<' . $this->from . '>' . $this->eol;
$header .= 'Reply-To: ' . $this->sender . '<' . $this->from . '>' . $this->eol;
$header .= 'Return-Path: ' . $this->from . $this->eol;
$header .= 'X-Mailer: PHP/' . phpversion() . $this->eol;
$header .= 'MIME-Version: 1.0' . $this->eol;
$header .= 'Content-Type: multipart/mixed; boundary="' . $boundary . '"' . $this->eol;
if (!$this->html) {
$message = '--' . $boundary . $this->eol;
$message .= 'Content-Type: text/plain; charset="' . $this->charset . '"' . $this->eol;
$message .= 'Content-Transfer-Encoding: base64' . $this->eol . $this->eol;
$message .= chunk_split(base64_encode($this->text));
} else {
$message = '--' . $boundary . $this->eol;
$message .= 'Content-Type: multipart/alternative; boundary="' . $boundary . '_alt"' . $this->eol . $this->eol;
$message .= '--' . $boundary . '_alt' . $this->eol;
$message .= 'Content-Type: text/plain; charset="' . $this->charset . '"' . $this->eol;
$message .= 'Content-Transfer-Encoding: base64' . $this->eol;
if ($this->text) {
$message .= chunk_split(base64_encode($this->text));
} else {
$message .= chunk_split(base64_encode('This is a HTML email and your email client software does not support HTML email!'));
}
$message .= '--' . $boundary . '_alt' . $this->eol;
$message .= 'Content-Type: text/html; charset="' . $this->charset . '"' . $this->eol;
$message .= 'Content-Transfer-Encoding: base64' . $this->eol . $this->eol;
$message .= chunk_split(base64_encode($this->html));
$message .= '--' . $boundary . '_alt--' . $this->eol;
}
foreach ($this->attachments as $attachment) {
$filename = basename($attachment);
$handle = fopen($attachment, 'r');
$content = fread($handle, filesize($attachment));
fclose($handle);
$message .= '--' . $boundary . $this->eol;
$message .= 'Content-Type: application/octetstream' . $this->eol;
$message .= 'Content-Transfer-Encoding: base64' . $this->eol;
$message .= 'Content-Disposition: attachment; filename="' . $filename . '"' . $this->eol;
$message .= 'Content-ID: <' . $filename . '>' . $this->eol . $this->eol;
$message .= chunk_split(base64_encode($content));
}
if ($this->protocol == 'mail') {
ini_set('sendmail_from', $this->from);
mail($to, $this->subject, $message, $header);
} elseif ($this->protocol == 'smtp') {
$handle = fsockopen($this->hostname, $this->port, $errno, $errstr, $this->timeout);
if (!$handle) {
exit('Error: ' . $errstr . ' (' . $errno . ')');
} else {
if (substr(PHP_OS, 0, 3) != 'WIN') {
socket_set_timeout($handle, $this->timeout, 0);
}
while ($line = fgets($handle, 515)) {
if (substr($line, 3, 1) == ' ') {
break;
}
}
if (!empty($this->username) && !empty($this->password)) {
fputs($handle, 'EHLO ' . getenv('SERVER_NAME') . $this->eol);
$reply = '';
while ($line = fgets($handle, 515)) {
$reply .= $line;
if (substr($line, 3, 1) == ' ') {
break;
}
}
if (substr($reply, 0, 3) != 250) {
exit('Error: EHLO not accepted from server!');
}
fputs($handle, 'AUTH LOGIN ' . $this->eol);
$reply = '';
while ($line = fgets($handle, 515)) {
$reply .= $line;
if (substr($line, 3, 1) == ' ') {
break;
}
}
if (substr($reply, 0, 3) != 334) {
exit('Error: AUTH LOGIN not accepted from server!');
}
fputs($handle, base64_encode($this->username) . $this->eol);
$reply = '';
while ($line = fgets($handle, 515)) {
$reply .= $line;
if (substr($line, 3, 1) == ' ') {
break;
}
}
if (substr($reply, 0, 3) != 334) {
exit('Error: Username not accepted from server!');
}
fputs($handle, base64_encode($this->password) . $this->eol);
$reply = '';
while ($line = fgets($handle, 515)) {
$reply .= $line;
if (substr($line, 3, 1) == ' ') {
break;
}
}
if (substr($reply, 0, 3) != 235) {
exit('Error: Password not accepted from server!');
}
} else {
fputs($handle, 'HELO ' . getenv('SERVER_NAME') . $this->eol);
$reply = '';
while ($line = fgets($handle, 515)) {
$reply .= $line;
if (substr($line, 3, 1) == ' ') {
break;
}
}
if (substr($reply, 0, 3) != 250) {
exit('Error: HELO not accepted from server!');
}
}
fputs($handle, 'MAIL FROM: <' . $this->from . '>XVERP' . $this->eol);
$reply = '';
while ($line = fgets($handle, 515)) {
$reply .= $line;
if (substr($line, 3, 1) == ' ') {
break;
}
}
if (substr($reply, 0, 3) != 250) {
exit('Error: MAIL FROM not accepted from server!');
}
if (!is_array($this->to)) {
fputs($handle, 'RCPT TO: <' . $this->to . '>' . $this->eol);
$reply = '';
while ($line = fgets($handle, 515)) {
$reply .= $line;
if (substr($line, 3, 1) == ' ') {
break;
}
}
if ((substr($reply, 0, 3) != 250) && (substr($reply, 0, 3) != 251)) {
exit('Error: RCPT TO not accepted from server!');
}
} else {
foreach ($this->to as $recipient) {
fputs($handle, 'RCPT TO: <' . $recipient . '>' . $this->eol);
$reply = '';
while ($line = fgets($handle, 515)) {
$reply .= $line;
if (substr($line, 3, 1) == ' ') {
break;
}
}
if ((substr($reply, 0, 3) != 250) && (substr($reply, 0, 3) != 251)) {
exit('Error: RCPT TO not accepted from server!');
}
}
}
fputs($handle, 'DATA' . $this->eol);
$reply = '';
while ($line = fgets($handle, 515)) {
$reply .= $line;
if (substr($line, 3, 1) == ' ') {
break;
}
}
if (substr($reply, 0, 3) != 354) {
exit('Error: DATA not accepted from server!');
}
fputs($handle, $header . $message . $this->eol);
fputs($handle, '.' . $this->eol);
$reply = '';
while ($line = fgets($handle, 515)) {
$reply .= $line;
if (substr($line, 3, 1) == ' ') {
break;
}
}
if (substr($reply, 0, 3) != 250) {
exit('Error: DATA not accepted from server!');
}
fputs($handle, 'QUIT' . $this->eol);
$reply = '';
while ($line = fgets($handle, 515)) {
$reply .= $line;
if (substr($line, 3, 1) == ' ') {
break;
}
}
if (substr($reply, 0, 3) != 221) {
exit('Error: QUIT not accepted from server!');
}
fclose($handle);
}
}
}
}
?>
OpenCart®
Project Owner & Developer.
Daniel,
I replaced the code, tried to send an email through the newsletter function in the admin panel, got an error about not being able to access the $protocol property. I changed it from private to public, tried again and got another error about a another protected variable, and others, changed each to public. Now I'm getting "Error: EHLO not accepted from server!" with port 465 and "Error: AUTH LOGIN not accepted from server!" for port 587 and have no clue where to go from here... any ideas?
I replaced the code, tried to send an email through the newsletter function in the admin panel, got an error about not being able to access the $protocol property. I changed it from private to public, tried again and got another error about a another protected variable, and others, changed each to public. Now I'm getting "Error: EHLO not accepted from server!" with port 465 and "Error: AUTH LOGIN not accepted from server!" for port 587 and have no clue where to go from here... any ideas?
Who is online
Users browsing this forum: No registered users and 162 guests