Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Не приходят оповещения о новых заказах с сайта. Обратная свзяь тоже не работает.


Recommended Posts

Здравствуйте. Есть магазин на opencart Version 2.3.0.2 (trs-2.3.0.0)  https://setpoint.com.ua/ Сделал настройки почты следующим образом см.вложение .setpoint-mail-settings.thumb.png.c66c519a8824279852a239077254b442.pngВ настройках google аккаунта разрешил доступ небезопасным приложениям. Проблема в том, что не приходят уведомления о заказах при клике на кнопку "Купить в один клик" в карточке товара , а также не приходят уведомления из формы обратной связи.Отправку почты с сервера проверил следующим кодом :

<?php
var_dump(mail("******@gmail.com","Test","Test"));
?>

Сообщения с сервера приходят. Буду признателен за любую помощь и рекомендации!

Змінено користувачем grpetr189853
Надіслати
Поділитися на інших сайтах


В логах вижу ошибки связанные с отправкой почты:
2019-03-14 16:49:34 - PHP Notice:  Undefined index: email in /home/setpoint/setpoint.com.ua/www/catalog/controller/information/contact.php on line 217
2019-03-14 16:49:34 - PHP Notice:  Undefined index: enquiry in /home/setpoint/setpoint.com.ua/www/catalog/controller/information/contact.php on line 221

Надіслати
Поділитися на інших сайтах


проверял также метдом smtp- скриптом который дал хостинг провайдер - вот он:

<?php

$login = '[email protected]'; // замените [email protected] на адрес электронной почты, с которого производится отправка. Поскольку логин совпадает с адресом отправителя - данная переменная используется и как логин, и как адрес отправителя. 

$password = 'password';  // Замените 'password' на пароль от почтового ящика, с которого производится отправка.
$to = '[email protected]';  // замените [email protected] на адрес электронной почты получателя письма.
$text="Привет, проверка связи по SMTP.";  // Содержимое отправляемого письма
function get_data($smtp_conn)  // функция получения кода ответа сервера. 
{
$data="";
while($str = fgets($smtp_conn,515)) 
{
$data .= $str;
if(substr($str,3,1) == " ") { break; }
}
return $data;
}
// формируем служебный заголовок письма.
$header="Date: ".date("D, j M Y G:i:s")." +0700\r\n"; 
$header.="From: =?UTF-8?Q?".str_replace("+","_",str_replace("%","=",urlencode('Тестовый скрипт')))."?= <$login>\r\n"; 
$header.="X-Mailer: Test script hosting Ukraine.com.ua \r\n"; 
$header.="Reply-To: =?UTF-8?Q?".str_replace("+","_",str_replace("%","=",urlencode('Тестовый скрипт')))."?= <$login>\r\n";
$header.="X-Priority: 3 (Normal)\r\n";
$header.="Message-ID: <12345654321.".date("YmjHis")."@ukraine.com.ua>\r\n";
$header.="To: =?UTF-8?Q?".str_replace("+","_",str_replace("%","=",urlencode('Получателю тестового письма')))."?= <$to\r\n";
$header.="Subject: =?UTF-8?Q?".str_replace("+","_",str_replace("%","=",urlencode('проверка')))."?=\r\n";
$header.="MIME-Version: 1.0\r\n";
$header.="Content-Type: text/plain; charset=UTF-8\r\n";
$header.="Content-Transfer-Encoding: 8bit\r\n";
$smtp_conn = fsockopen("mail.ukraine.com.ua", 25,$errno, $errstr, 10); //соединяемся с почтовым сервером mail.ukraine.com.ua , порт 25 .
if(!$smtp_conn) {print "соединение с серверов не прошло"; fclose($smtp_conn); exit;}  
$data = get_data($smtp_conn);
fputs($smtp_conn,"EHLO mail.ukraine.com.ua\r\n"); // начинаем приветствие.
$code = substr(get_data($smtp_conn),0,3); // проверяем, не возвратил ли сервер ошибку.
if($code != 250) {print "ошибка приветсвия EHLO"; fclose($smtp_conn); exit;}
fputs($smtp_conn,"AUTH LOGIN\r\n"); // начинаем процедуру авторизации.
$code = substr(get_data($smtp_conn),0,3);
if($code != 334) {print "сервер не разрешил начать авторизацию"; fclose($smtp_conn); exit;}

fputs($smtp_conn,base64_encode("$login")."\r\n"); // отправляем серверу логин от почтового ящика (на хостинге "Украина" он совпадает с именем почтового ящика).
$code = substr(get_data($smtp_conn),0,3);
if($code != 334) {print "ошибка доступа к такому юзеру"; fclose($smtp_conn); exit;}

fputs($smtp_conn,base64_encode("$password")."\r\n");       // отправляем серверу пароль.
$code = substr(get_data($smtp_conn),0,3);                 
if($code != 235) {print "неправильный пароль"; fclose($smtp_conn); exit;}

fputs($smtp_conn,"MAIL FROM:$login\r\n"); // отправляем серверу значение MAIL FROM.
$code = substr(get_data($smtp_conn),0,3);
if($code != 250) {print "сервер отказал в команде MAIL FROM"; fclose($smtp_conn); exit;}

fputs($smtp_conn,"RCPT TO:$to\r\n"); // отправляем серверу адрес получателя.
$code = substr(get_data($smtp_conn),0,3);
if($code != 250 AND $code != 251) {print "Сервер не принял команду RCPT TO"; fclose($smtp_conn); exit;}

fputs($smtp_conn,"DATA\r\n"); // отправляем команду DATA.
$code = substr(get_data($smtp_conn),0,3);
if($code != 354) {print "сервер не принял DATA"; fclose($smtp_conn); exit;}

fputs($smtp_conn,$header."\r\n".$text."\r\n.\r\n"); // отправляем тело письма.
$code = substr(get_data($smtp_conn),0,3);
if($code != 250) {print "ошибка отправки письма"; fclose($smtp_conn); exit;}

if($code == 250) {print "Письмо отправлено успешно. Ответ сервера $code"  ;}

fputs($smtp_conn,"QUIT\r\n");   // завершаем отправку командой QUIT.
fclose($smtp_conn); // закрываем соединение.
?>

Почта доходит с сервера.

Змінено користувачем grpetr189853
Надіслати
Поділитися на інших сайтах


  • 11 months later...

тоже самое,  письма с заказом приходят клиенту,  и работает ссылка на заказ. Но админу не приходят письма,  нет писем и на дополнительные адреса.  При настройке мейл. Если изменить на SMTP то вообще перестает работать корзина. Ошибка сервера.  Что делать кто подскажет,  может есть какой то модуль с уведомлениями в Вайбер или ТЕлегу. 

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.