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


Детально описание функции send_template


Сообщений в теме: 42

#1 nospoon

    Новичок

  • Пользователи
  • Pip
  • 3 сообщений

Отправлено 21 Май 2013 - 16:21

Добрый день!

Хотелось бы описание функции send_template, как расписано в документации по вычислениям на примере insert_query.
Про аргумент с id темплейта я разобрался по аналогии с ID самих таблиц в БД.
Вопрос по второму аргументу функции. Там может быть только ID строки? Нельзя ли передать дополнительные аргументы?
Если да, то какие?

#2 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 761 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 21 Май 2013 - 16:51

Там ничего особо детализировать не нужно, формат очень простой: send_template(id_шаблона, условие_фильтра). Второй аргумент - это любое условие отбора записей, разумеется там может быть не только условие "id=111", а какое угодно. Формат такой же как в SQL запросе после слова WHERE. Учитывайте только что архивные и удаленные записи также попадут в отбор, если вы явно не укажете отбирать только активные (status=0). Если этот аргумент опустить (как это прописано в заданиях крон в рассылках по расписанию), то берется фильтр из настроек шаблона.

#3 nospoon

    Новичок

  • Пользователи
  • Pip
  • 3 сообщений

Отправлено 22 Май 2013 - 01:11

Спасибо!

#4 All_ex74

    Активный участник

  • Пользователи
  • PipPipPip
  • 138 сообщений
  • Пол:Мужчина
  • Город:Барнаул

Отправлено 16 Июнь 2014 - 17:23

Затрудняюсь с отправкой по шаблону, подмогните...

Таб. Исполнители: вычисление на поле Статус (список), срабатывающее на изменение значения поля в - Исполняемая.
Имеется поле Исполнитель, связанное с таб. Исполнители. Создан шаблон рассылки с ID 240. Проверена тестовая отправка: внутренний SMTP отправляет без ошибок, почта доходит. Само вычисление работает, но вот строка send_template(240, "`status`=0 AND `id` =".$line['Исполнитель']['ID']); не хочет отправлять почту...

Вроде и запрос стандартный, не отправляет и всё тут... Где искать?

if ($line['Статус']=="Исполняемая")
{
		  $line['Исполнитель']['Карточка'] = "Связана";
		  send_template(240, "`status`=0 AND `id` =".$line['Исполнитель']['ID']); // отсылаем письмо исполнителю
}
if ($line['Статус']=="Завершённая")
{
		  $line['Закрыта'] = date("d.m.Y H:i");
		  $line['Заказчик']['Связана по услуге'] = "";
		  $line['Исполнитель']['Карточка'] = "Свободна";
}
if ($event['changed']['5620']['old']=="Завершённая") $line['Статус'] = "Завершённая";

Сообщение отредактировал All_ex74: 16 Июнь 2014 - 17:34


#5 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 761 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 16 Июнь 2014 - 17:30

И? Пишите сразу всё, без редактирования, т.к. я часто сразу с почты захожу и потом ваши изменения не факт что увижу (могу вообще забыть потом зайти сюда).

#6 All_ex74

    Активный участник

  • Пользователи
  • PipPipPip
  • 138 сообщений
  • Пол:Мужчина
  • Город:Барнаул

Отправлено 16 Июнь 2014 - 17:40

Просмотр сообщенияCbCoder (16 Июнь 2014 - 17:30) писал:

И? Пишите сразу всё, без редактирования, т.к. я часто сразу с почты захожу и потом ваши изменения не факт что увижу (могу вообще забыть потом зайти сюда).

Что ещё? Вроде все описал...

#7 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 761 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 16 Июнь 2014 - 17:52

Ну так дописали же опять (после того как я написал), поэтому предупреждаю что в следующий раз могу не увидеть окончательного сообщения. Старайтесь сразу все отсылать во избежание недоразумений.

Цитата

Вроде и запрос стандартный, не отправляет и всё тут... Где искать?

Что-то юмора не понял: вычисление в таблице Исполнители с полем Исполнитель? Таблица сама на себя ссылается? Если это опечатка, то вопрос: а шаблон где лежит, в какой таблице?

#8 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 761 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 16 Июнь 2014 - 17:54

Да, и что значит "не хочет отправлять", письмо в Список рассылок попадает? Там выходит какое-то сообщение об ошибке? В первую очередь туда смотреть надо и сообщать тут результат отправки или провала.

#9 All_ex74

    Активный участник

  • Пользователи
  • PipPipPip
  • 138 сообщений
  • Пол:Мужчина
  • Город:Барнаул

Отправлено 16 Июнь 2014 - 17:58

Просмотр сообщенияCbCoder (16 Июнь 2014 - 17:52) писал:

Что-то юмора не понял: вычисление в таблице Исполнители с полем Исполнитель? Таблица сама на себя ссылается? Если это опечатка, то вопрос: а шаблон где лежит, в какой таблице?

Извиняюсь, опечатка - таб. Заявки конечно же - шаблон рассылки соответственно тоже в этой же таблице...
Но обнаружил интересное совпадение, конечно не должно по идее повлиять - ID таб. Исполнители (240) совпадает с ID шаблона...

#10 All_ex74

    Активный участник

  • Пользователи
  • PipPipPip
  • 138 сообщений
  • Пол:Мужчина
  • Город:Барнаул

Отправлено 16 Июнь 2014 - 17:59

Просмотр сообщенияCbCoder (16 Июнь 2014 - 17:54) писал:

Да, и что значит "не хочет отправлять", письмо в Список рассылок попадает? Там выходит какое-то сообщение об ошибке? В первую очередь туда смотреть надо и сообщать тут результат отправки или провала.
В том то и дело, что список рассылок пуст!.. Ошибок никаких нет - как будто ничего не отправлялось.

#11 All_ex74

    Активный участник

  • Пользователи
  • PipPipPip
  • 138 сообщений
  • Пол:Мужчина
  • Город:Барнаул

Отправлено 16 Июнь 2014 - 18:18

и...

#12 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 761 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 16 Июнь 2014 - 18:19

Цитата

Извиняюсь, опечатка - таб. Заявки конечно же - шаблон рассылки соответственно тоже в этой же таблице...

И что он делает в этой таблице, если в условии id равно id из таблицы Исполнители (по полю связи)? Тогда либо шаблон должен быть в Исполнителях, либо условие некорректное, т.к. пытается найти в Заявках запись с id Исполнителя.

Просмотр сообщенияAll_ex74 (16 Июнь 2014 - 17:59) писал:

В том то и дело, что список рассылок пуст!

Значит условие фильтра не выполняется (не возвращает ни одну запись, по причинам изложенным выше), т.е. нет ни одной записи, которую можно отослать по шаблону.

#13 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 761 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 16 Июнь 2014 - 18:19

Просмотр сообщенияAll_ex74 (16 Июнь 2014 - 18:18) писал:

и...

?

#14 All_ex74

    Активный участник

  • Пользователи
  • PipPipPip
  • 138 сообщений
  • Пол:Мужчина
  • Город:Барнаул

Отправлено 16 Июнь 2014 - 18:31

Просмотр сообщенияCbCoder (16 Июнь 2014 - 18:19) писал:

?
Все отправилось, спасибо.

#15 All_ex74

    Активный участник

  • Пользователи
  • PipPipPip
  • 138 сообщений
  • Пол:Мужчина
  • Город:Барнаул

Отправлено 16 Июнь 2014 - 18:43

Подскажите пожалуйста, а как отправить sendmail () - т.е. без шаблона?

#16 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 761 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 17 Июнь 2014 - 13:53

Просмотр сообщенияAll_ex74 (16 Июнь 2014 - 18:31) писал:

Все отправилось, спасибо

Вы хоть поясняйте, что в результате чего заработало, а то может зря я распинался.

Просмотр сообщенияAll_ex74 (16 Июнь 2014 - 18:43) писал:

Подскажите пожалуйста, а как отправить sendmail () - т.е. без шаблона?

Не совсем понял, описание функции нужно? sendmail (тема, текст, кому);

#17 All_ex74

    Активный участник

  • Пользователи
  • PipPipPip
  • 138 сообщений
  • Пол:Мужчина
  • Город:Барнаул

Отправлено 18 Июнь 2014 - 07:14

Просмотр сообщенияCbCoder (17 Июнь 2014 - 13:53) писал:

Вы хоть поясняйте, что в результате чего заработало, а то может зря я распинался.

Да всё уже сделал, не зря распинались)

Сообщение отредактировал All_ex74: 18 Июнь 2014 - 07:15


#18 All_ex74

    Активный участник

  • Пользователи
  • PipPipPip
  • 138 сообщений
  • Пол:Мужчина
  • Город:Барнаул

Отправлено 18 Июнь 2014 - 07:18

Просмотр сообщенияCbCoder (17 Июнь 2014 - 13:53) писал:

Не совсем понял, описание функции нужно? sendmail (тема, текст, кому);

Нет не функции, а любой рабочий примерчик. Поля я сам подставлю нужные. Иногда требуется послать одно письмо без шаблона и подстановки в общую очередь отправки. В отправке SMS есть подобная функция - sendsms. С ней я уже разобрался полностью и хотел бы узнать подобие в отправке почты...

#19 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 761 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 18 Июнь 2014 - 10:04

Просмотр сообщенияAll_ex74 (18 Июнь 2014 - 07:14) писал:

Да всё уже сделал, не зря распинались)

Ну так как именно сделали то, перенесли шаблон из Заявок в Исполнителя? Или условие фильтра исправили? Интересно же.

Цитата

Нет не функции, а любой рабочий примерчик. Поля я сам подставлю нужные. Иногда требуется послать одно письмо без шаблона и подстановки в общую очередь отправки. В отправке SMS есть подобная функция - sendsms. С ней я уже разобрался полностью и хотел бы узнать подобие в отправке почты...

А какой там может быть примерчик то? Банальная отправка письма с любым текстом и темой нужному адресату. Работает полностью аналогично sendsms, и если вы уже работали с ней, то не понимаю в чем сложность с sendmail.

sendmail("Оповещение", "Здравствуйте! Напоминаем вам об истечении срока оплаты.", "client@example.com");


#20 All_ex74

    Активный участник

  • Пользователи
  • PipPipPip
  • 138 сообщений
  • Пол:Мужчина
  • Город:Барнаул

Отправлено 20 Июнь 2014 - 06:54

Просмотр сообщенияCbCoder (18 Июнь 2014 - 10:04) писал:

Ну так как именно сделали то, перенесли шаблон из Заявок в Исполнителя? Или условие фильтра исправили? Интересно же.



А какой там может быть примерчик то? Банальная отправка письма с любым текстом и темой нужному адресату. Работает полностью аналогично sendsms, и если вы уже работали с ней, то не понимаю в чем сложность с sendmail.

sendmail("Оповещение", "Здравствуйте! Напоминаем вам об истечении срока оплаты.", "client@example.com");

Спасибо, так и думал. Сами говорили, что лучше переспросить лишний раз...)





Количество пользователей, читающих эту тему: 3

0 пользователей, 3 гостей, 0 анонимных