Перейти к содержимому


Отправка писем через форму обратной связи

форма обратной связи email

  • Вы не можете ответить в тему
Сообщений в теме: 13

#1 Yura_KO

    Пользователь

  • Пользователи
  • PipPip
  • 15 сообщений
Репутация: 0
Начинающий

Отправлено 11 September 2012 - 08:21 AM

Доброго времени суток!

Коллеги, подскажите как настроить, чтобы при отправки посетителем письма через форму обратной связи на сайте и через форму "Задать вопрос о товаре", письмо приходило не только на основной email магазина, но и отправлялась копия на несколько других адресов.
  • 0

#2 badisoft

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 5075 сообщений
Репутация: 786
Мастер

Отправлено 11 September 2012 - 09:26 AM

В product_detailed.php и в feedback.php для отсылки письма изспользуется функция xMailTxtHTML, задействуейте ее аналогично нужное количество раз, заменяя адрес получателя.
  • 0
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)

#3 Yura_KO

    Пользователь

  • Пользователи
  • PipPip
  • 15 сообщений
Репутация: 0
Начинающий

Отправлено 11 September 2012 - 12:41 PM

Выдернул из файла feedback.php, напишите пожалуйста что нужно добавить?

if (xMailTxtHTML(CONF_GENERAL_EMAIL, $message_subject, $message_text, $customer_email, $customer_name)){
Redirect("index.php?feedback=1&sent=1");
}else{
$smarty->assign("error",3);
}
}
}else{
if (xMailTxtHTML(CONF_GENERAL_EMAIL, $message_subject, $message_text, $customer_email, $customer_name)){
Redirect("index.php?feedback=1&sent=1");
  • 0

#4 badisoft

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 5075 сообщений
Репутация: 786
Мастер

Отправлено 11 September 2012 - 12:58 PM

Вы видите в коде функцию

xMailTxtHTML(CONF_GENERAL_EMAIL, $message_subject, $message_text, $customer_email, $customer_name)

где CONF_GENERAL_EMAIL это ваш основной email, заданный в "Общих настройках". Остальные аргументы, ИМХО, довольно очевидны.
Вам нужно написать еще один вызов этой функции, но вместо CONF_GENERAL_EMAIL вписать другой адрес получателя.

Не исключено, что можно без какой-либо правки PHP просто вписать в "Общих настройках" вместо одного емейла несколько через запятую либо точку с запятой.
  • 0
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)

#5 Yura_KO

    Пользователь

  • Пользователи
  • PipPip
  • 15 сообщений
Репутация: 0
Начинающий

Отправлено 11 September 2012 - 01:13 PM

Я вижу функцию, но у меня вопрос куда конкретно в код её вставлять, в каком виде, с каким аргументами и как, чтобы сайт не накрылся?
Вот такой простой вызов не проканал, сайт отказалсф открываться и пришлось возвращать старый файл.
if (xMailTxtHTML(CONF_GENERAL_EMAIL, $message_subject, $message_text, $customer_email, $customer_name)){
		xMailTxtHTML(mymail@mail.ru, $message_subject, $message_text, $customer_email, $customer_name); // additional address

  • 0

#6 Dbus

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 1116 сообщений
Репутация: 174
Мастер
  • ГородОдесса

Отправлено 11 September 2012 - 02:27 PM

А что мешает настроить фильтры и пересылку в самом почтовом ящике, если с функцией разобраться не можете ?
  • 0
502 Bad Gateway

#7 Yura_KO

    Пользователь

  • Пользователи
  • PipPip
  • 15 сообщений
Репутация: 0
Начинающий

Отправлено 11 September 2012 - 02:29 PM

А что мешает настроить фильтры и пересылку в самом почтовом ящике, если с функцией разобраться не можете ?


При пересылке теряется e-mail адрес того, кто отравил письмо.
  • 0

#8 Dbus

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 1116 сообщений
Репутация: 174
Мастер
  • ГородОдесса

Отправлено 11 September 2012 - 02:31 PM

тогда попробуйте в коде mymail@mail.ru в одинарные кавычки закрыть.
  • 0
502 Bad Gateway

#9 Yura_KO

    Пользователь

  • Пользователи
  • PipPip
  • 15 сообщений
Репутация: 0
Начинающий

Отправлено 11 September 2012 - 02:43 PM

тогда попробуйте в коде mymail@mail.ru в одинарные кавычки закрыть.


Отправляется, но только на основной адрес.
  • 0

#10 badisoft

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 5075 сообщений
Репутация: 786
Мастер

Отправлено 11 September 2012 - 02:45 PM

текстовые строки обычно заключают в кавычки :).
  • 0
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)

#11 Dbus

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 1116 сообщений
Репутация: 174
Мастер
  • ГородОдесса

Отправлено 11 September 2012 - 02:48 PM

Отправляется, но только на основной адрес.

а код точно в нужной секции вставлялся ? там их 2, с капчей и без.
  • 0
502 Bad Gateway

#12 badisoft

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 5075 сообщений
Репутация: 786
Мастер

Отправлено 11 September 2012 - 02:51 PM

Отправляется, но только на основной адрес.

Надо смотреть логи. Причем даже не апача, а MTA - почему один емейл отправляется, а второй нет. Скорее всего, емейлы находятся в разных доменах и для первого домена SMTP-сервер почту принимает, а для второго - нет. Или еще с десяток разных причин.
  • 0
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)

#13 Dbus

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 1116 сообщений
Репутация: 174
Мастер
  • ГородОдесса

Отправлено 11 September 2012 - 02:53 PM

Или еще с десяток разных причин.

Ты преувеличиваешь :)
Подозреваю что он просто не тот кусок правил.
  • 0
502 Bad Gateway

#14 Yura_KO

    Пользователь

  • Пользователи
  • PipPip
  • 15 сообщений
Репутация: 0
Начинающий

Отправлено 11 September 2012 - 03:25 PM

Исправил.
Работает вот так:

if($error_f == 1){
if (xMailTxtHTML(CONF_GENERAL_EMAIL, $message_subject, $message_text, $customer_email, $customer_name)){

xMailTxtHTML('mymail1@mail.ru', $message_subject, $message_text, $customer_email, $customer_name); // Добавлено
xMailTxtHTML('mymail2@yandex.ru', $message_subject, $message_text, $customer_email, $customer_name); // Добавлено

Redirect("index.php?feedback=1&sent=1");
}else{
$smarty->assign("error",3);

Спасибо!
  • 0