par
max9 » 27 déc. 2012, 21:25
Bonjour,
Je voudrais envoyer des mails aux clients après 7 jours à partir dd'une date connue (date_add dans table order_history) dans la BDD.
Voici ma requète:
Code : Tout sélectionner
$emails = Db::getInstance()->ExecuteS('
SELECT o.id_order, oh.id_order, c.id_cart, c.id_lang, cu.id_customer, cu.firstname, cu.lastname, cu.email
FROM '._DB_PREFIX_.'orders o
LEFT JOIN '._DB_PREFIX_.'customer cu ON (cu.id_customer = o.id_customer)
LEFT JOIN '._DB_PREFIX_.'cart c ON (c.id_cart = o.id_cart)
LEFT JOIN '._DB_PREFIX_.'order_history oh ON (o.id_order = oh.id_order)
WHERE o.valid = 0 AND DATE_SUB(CURDATE(),INTERVAL 7 DAY) <= oh.date_add AND oh.id_order_state = 10 AND cu.id_customer NOT IN
(SELECT id_customer FROM '._DB_PREFIX_.'unpaid_relances_log WHERE email_relance = 1)
GROUP BY o.id_customer
');
Ce code fonctionne mais envoie l'email entre le 0ème et 7ème jours défini. Or je voudrais qu'il soit envoyé à partir du 7ème jour.
Je n'arrive pas du tout à faire la requète nécessaire pour cela, pas assez calé !
Pouvez-vous m'aider à surmonter ce gros (pour moi) problème ?
Bonjour,
Je voudrais envoyer des mails aux clients après 7 jours à partir dd'une date connue (date_add dans table order_history) dans la BDD.
Voici ma requète:
[code]
$emails = Db::getInstance()->ExecuteS('
SELECT o.id_order, oh.id_order, c.id_cart, c.id_lang, cu.id_customer, cu.firstname, cu.lastname, cu.email
FROM '._DB_PREFIX_.'orders o
LEFT JOIN '._DB_PREFIX_.'customer cu ON (cu.id_customer = o.id_customer)
LEFT JOIN '._DB_PREFIX_.'cart c ON (c.id_cart = o.id_cart)
LEFT JOIN '._DB_PREFIX_.'order_history oh ON (o.id_order = oh.id_order)
WHERE o.valid = 0 AND DATE_SUB(CURDATE(),INTERVAL 7 DAY) <= oh.date_add AND oh.id_order_state = 10 AND cu.id_customer NOT IN
(SELECT id_customer FROM '._DB_PREFIX_.'unpaid_relances_log WHERE email_relance = 1)
GROUP BY o.id_customer
');[/code]
Ce code fonctionne mais envoie l'email entre le 0ème et 7ème jours défini. Or je voudrais qu'il soit envoyé à partir du 7ème jour.
Je n'arrive pas du tout à faire la requète nécessaire pour cela, pas assez calé !
Pouvez-vous m'aider à surmonter ce gros (pour moi) problème ?