0 Пользователей и 1 Гость просматривают эту тему.
  • 9 Ответов
  • 2646 Просмотров
*

saidrustam

  • Захожу иногда
  • 100
  • 7 / 0
в коде есть SQL выборка, и отправка уделомлении на email указанный в обявлении(в этом таблице). А хотелось бы чтобы он брал email из таблицы users при условии(#__adsmanager_ads.id == users.id)
как это оформить? можеть спомощью UNION, но я не силен в sql, помогите ребята

function manage_expiration($option,$plugins){
...
$database->setQuery( "SELECT id,email,ad_headline,userid FROM #__adsmanager_ads WHERE DATE_SUB(expiration_date, INTERVAL ".$conf->recall_time." DAY) < CURDATE() AND recall_mail_sent = 0");
...
sendEmail($ad,$conf,$option);
*

saidrustam

  • Захожу иногда
  • 100
  • 7 / 0
Вопрос решен, выкладываю решение проблем:

$database->setQuery( "SELECT a.id,j.email,a.ad_headline FROM #__adsmanager_ads AS a, jos_users AS j WHERE DATE_SUB(expiration_date, INTERVAL ".$conf->recall_time." DAY) < CURDATE() AND recall_mail_sent = 0 AND a.userid = j.id");
*

Doc

  • Захожу иногда
  • 456
  • 17 / 0
А в 2.6 никто не знает как такое можно сделать ?
А то если поле Емаил не заполнено, то он не отправляет уведомление в версии 2.6.2
Нашел похожий код в administrator/components/com_adsmanager/models/content.php
Там есть аж несколько штук похожих строк, а вот какая точно и там ли это нужно делать

Может кто знает ?
*

Alex89

  • Давно я тут
  • 555
  • 198 / 1
  • Joomlaman :)
не проще сделать поле Email обязательным для заполнения?
Увеличить посещаемость сайта помогут здесь - http://tinyurl.com/kpaprwy
Если помог, ткните "крестик" в репу!
*

Doc

  • Захожу иногда
  • 456
  • 17 / 0
Я лично не люблю вести переписку, так как это бестолковое занятие, все кто что то писал, то не один еще ничего не купил
Так сидят в офисах заняться нечем, вот и ведут переписку, а те кто хочет что то купить, то всегда звонят
Поэтому не хочу делать обязательное поле для емаил, да еще если делаешь формой, то шаблон перекашивает при отправке
По этой причине у себя в объявлениях емаил не указываю и не делаю его обязательным, раньше вообще выключал это поле, но потом решил, что может кто захочет по переписываться и оставит свой емаил


Сейчас код из второго сообщения вставил в файл туда, где указал путь в своем сообщение и все теперь работает и берет емаил из регистрации пользователя
Для тех кто не включает уведомление на емаил, то их наверное и так все устроит, так как это нужно только для уведомлений
*

beicik

  • Захожу иногда
  • 60
  • 8 / 0
Вопрос решен, выкладываю решение проблем:

$database->setQuery( "SELECT a.id,j.email,a.ad_headline FROM #__adsmanager_ads AS a, jos_users AS j WHERE DATE_SUB(expiration_date, INTERVAL ".$conf->recall_time." DAY) < CURDATE() AND recall_mail_sent = 0 AND a.userid = j.id");

а можно поподробнее как это сделать?
*

Doc

  • Захожу иногда
  • 456
  • 17 / 0
beicik, какая у вас версия ?
Если 2.5, то в файле components/com_adsmanager/adsmanager.php
Находим этот код
Код
$database->setQuery( "SELECT id,email,ad_headline,userid FROM #__adsmanager_ads WHERE DATE_SUB(expiration_date, INTERVAL ".$conf->recall_time." DAY) < CURDATE() AND recall_mail_sent = 0");
И меняем на этот
Код
$database->setQuery( "SELECT a.id,j.email,a.ad_headline FROM #__adsmanager_ads AS a, jos_users AS j WHERE DATE_SUB(expiration_date, INTERVAL ".$conf->recall_time." DAY) < CURDATE() AND recall_mail_sent = 0 AND a.userid = j.id");
И все

Если версия 2.6
То ищите код в administrator/components/com_adsmanager/models/content.php
Там он почти такой же
*

beicik

  • Захожу иногда
  • 60
  • 8 / 0
beicik, какая у вас версия ?
Если 2.5, то в файле components/com_adsmanager/adsmanager.php
Находим этот код
Код
$database->setQuery( "SELECT id,email,ad_headline,userid FROM #__adsmanager_ads WHERE DATE_SUB(expiration_date, INTERVAL ".$conf->recall_time." DAY) < CURDATE() AND recall_mail_sent = 0");
И меняем на этот
Код
$database->setQuery( "SELECT a.id,j.email,a.ad_headline FROM #__adsmanager_ads AS a, jos_users AS j WHERE DATE_SUB(expiration_date, INTERVAL ".$conf->recall_time." DAY) < CURDATE() AND recall_mail_sent = 0 AND a.userid = j.id");
И все

Если версия 2.6
То ищите код в administrator/components/com_adsmanager/models/content.php
Там он почти такой же
Спасибо
*

Doc

  • Захожу иногда
  • 456
  • 17 / 0
А кто подскажет как решить это в AdsManager 2.8.2
Там код отличается
Вот код из 2.8.2
Код
$this->_db->setQuery( "SELECT * FROM #__adsmanager_ads WHERE expiration_date IS NOT NULL AND DATE_SUB(expiration_date, INTERVAL ".$conf->recall_time." DAY) <= CURDATE() AND recall_mail_sent = 0 AND published = 1");
Нужно заменить на этот
Код
$this->_db->setQuery( "SELECT a.id,j.email,a.ad_headline FROM #__adsmanager_ads AS a, jos_users AS j WHERE DATE_SUB(expiration_date, INTERVAL ".$conf->recall_time." DAY) < CURDATE() AND recall_mail_sent = 0 AND a.userid = j.id");

Может кто подскажет ?
Думал сделать так
Код
$this->_db->setQuery( "SELECT * FROM #__adsmanager_ads WHERE expiration_date IS NOT NULL AND DATE_SUB(expiration_date, INTERVAL ".$conf->recall_time." DAY) <= CURDATE() AND recall_mail_sent = 0 AND a.userid = j.id AND published = 1");
Только не знаю на сколько это правильно будет и будет ли вообще работать
Или можно смело менять код и все будет нормуль ?
*

Doc

  • Захожу иногда
  • 456
  • 17 / 0
Попробовал поставил старый код, не работает...
Как же такое можно сделать в 2.8, все перепробовал и нечего не вышло ?
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как сделать сортировку объявдений в AdsManager

Автор Olegarh

Ответов: 9
Просмотров: 14781
Последний ответ 03.06.2018, 22:59:57
от Sabotage
AdsManager - как сделать несколько адресов?

Автор Ksenia2009

Ответов: 0
Просмотров: 10755
Последний ответ 21.04.2018, 15:13:44
от Ksenia2009
Как сделать drop down меню на странице объявлений Contents List в AdsManager?

Автор fadsergc

Ответов: 0
Просмотров: 802
Последний ответ 13.03.2017, 01:25:00
от fadsergc
новая функция AdsManager 2.6.5 - продление срока объявления

Автор aaalexusss

Ответов: 102
Просмотров: 20751
Последний ответ 28.09.2016, 11:15:21
от moonaway
Как сделать меню категорий сквозным?

Автор kozhenevsky

Ответов: 1
Просмотров: 876
Последний ответ 30.08.2016, 07:23:44
от biper