php - Mysql PHP推荐

标签 php mysql email

我正在基于 mysql 表数据构建提醒,我的表看起来像

Task Desc  Name Email
1    Task1 John John@mail.com
2    Task2 Eve  Eve@mail.com
3    task3 John John@mail.com
4    Task4 Mark Mark@mail.com
5    task5 John John@mail.com

在我的 php 中

$query = "SELECT desc, name, email FROM table";
$result_query = mysql_query($query) or die("Error in query: $query " . mysql_error());
$num_results_query = mysql_num_rows($result_query);

if ($num_results_trad > 0) {
ob_start();
HERE I WRITE MY EMAIL

$Buffer = ob_get_contents();
    // get the output
    ob_end_clean();

之后我发送电子邮件。现在我的问题是我需要向每个用户发送一封电子邮件,其中包含分配给他的所有任务。如果我做一个循环,我会为每个任务或行发送一封电子邮件,我想做的是发送一封电子邮件,例如发送给任务 1 3 和 5 的约翰,然后发送给找到的第二封电子邮件,依此类推用户。有人可以指出我的方向吗?

最佳答案

您必须循环两次,一次聚合所有任务,然后一次发送电子邮件。在非工作 php 伪代码中:

$taskForUser = array();

// your query
$query = "SELECT desc, name, email FROM table";
$result_query = mysql_query($query) or die("Error in query: $query " . mysql_error());
$num_results_query = mysql_num_rows($result_query);


foreach ($query as $result) {
    $taskForUser[$result['Email']][] = $result;
}

foreach ($taskForUser as $userTasks) {
    // email $userTasks at once.
}

关于php - Mysql PHP推荐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23142215/

相关文章:

linux - 除了 procmail 之外,还有哪些 Unix 工具可以通过管道发送 "read"电子邮件?

java - 通过 Microsoft Exchange 发送电子邮件

php - 刷新用于 IP 黑名单检查的 PHP 脚本

php - 获取使用短代码的所有页面/帖子 ID

php - 我可以在 iOS 设备上运行 PHP 脚本吗?

mysql - 如何使用 phpmyadmin 4.0.4.1 和 Xampp v3.2.1 设置 mysql 数据库

php - 使用 http post 的评级系统 - 避免滥用

php - Doctrine 2 : Warning: Illegal offset type in isset or empty

mysql - MYSQL存储过程插入两次

java - 使用 JavaMail 解析 MIME 消息