来自mysql查询的动态邮件列表

tgabmvqs  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(327)

关闭。这个问题需要更加突出重点。它目前不接受答案。
**想改进这个问题吗?**通过编辑这篇文章更新这个问题,使它只关注一个问题。

两年前关门了。
改进这个问题
我最近在wordpress(woocommerce)网站上实现了一个“奖励积分”系统。
我构建了一个mysql查询,向我显示每个客户的姓名、电子邮件地址和当前积分余额:

SELECT  
            b1.meta_value AS first_name, 
            b2.meta_value as last_name, 
            b3.meta_value as points_balance,
            a.user_email,
            p.points_balance

FROM    wp_zaydb6_users a
                INNER JOIN wp_usermeta b1 ON b1.user_id = a.ID AND b1.meta_key = 'first_name' 
                INNER JOIN wp_usermeta b2 ON b2.user_id = a.ID AND b2.meta_key = 'last_name'
                INNER JOIN wp_usermeta b3 ON b3.user_id = a.ID AND b3.meta_key = 'wc_points_balance'

WHERE  b3.meta_value > 0

返回如下内容:

John    Smith   511 j.smith@gmail.com
Michael Barrymore   71  MICHAEL@BARRYMORE.COM.AU
Bob Monkhouse   326 Bob.monkhouse@bobmonk.at
Jane    Doe 176 Jane.Doe@janedoe.ch
Ricky   Martin  511 r.martin@gmail.com

我的下一步是构造一个脚本(bash,但最好是php),它将循环遍历每个记录,提取每个“名字”,打印积分余额并通过电子邮件发送给相关用户。这一切都需要 Package 成html格式的电子邮件,而不是纯文本。
我没有建立动态邮件列表,所以这对我来说是全新的。
前进的最佳途径是什么?

ars1skjm

ars1skjm1#

我有一个旧系统,必须做这样的事情,我做的非常快,但黑客的方式。

$row_message = fetch_html_template('renew_error'); //returns the html template text, that has special markings like [name], [username].
$row_message['text'] = str_replace('[name]', $variableThatHasUsersName, $row_message['text']);

这是一个非常肮脏和快速的方式来修复它。如果您想扩展它,您可以使用str\u replace多次替换任意数量的变量。
p、 如果这对你有帮助,请接受答案。

相关问题