gpt4 book ai didi

php - 如何修改mysqli结果? (向结果添加一行)

转载 作者:太空宇宙 更新时间:2023-11-03 10:49:12 24 4
gpt4 key购买 nike

我正在使用 phpMailer 向大量用户发送时事通讯。在一个 while 循环中,我得到了每个用户的电子邮件地址:

$query = "...";
if ($result = mysqli_query($link, $query)) {
while ($row = mysqli_fetch_assoc($result)) {
...
$mail->AddAddress($row['email']);
$newbody = str_replace("[NAME]",$row['name'],$body);
$mail->MsgHTML($newbody);

if(!$mail->send()) /* send Email */
{$_SESSION['logErrors'] .= $mail->ErrorInfo." (".$row['email'].")<br>";} else
{$_SESSION['logSent'] .= $row['email']." - ".date("H:m:s")."<br>";}
$mail->ClearAddresses();
...
} // mysqli_fetch_assoc
} // mysqli_query

现在我想添加一个选项,例如“将时事通讯的副本发送给我”。我认为,最好的方法是向这个 mysqli-result 添加一个额外的(虚拟的、临时的)行,其中包含我的电子邮件。

因此,如果我检查该选项,则 if 语句将更改我的查询并使用包含我的电子邮件地址的第一个新虚拟行修改结果。

谁能帮我解决这个问题?我不知道查询应该是什么样子。

MYSQL:                               MODIFIED RESULT:
| id | email | name | group | | id | email | name | group |
|---------------------------| --> |------------------------------|
| 1 | foo@ | foo | bar | | 1 | myemail@ | my | my |
| 2 | .. | .. | .. | | 2 | foo@ | foo | bar |

最佳答案

有很多方法可以做到这一点。但是,您的查询可能如下所示:

(select "1", "myemail", "my","my") union (<your_select_query>)

但是,我建议创建一个函数来处理您的数据。为您的输入调用一次,并根据查询结果多次调用它。

关于php - 如何修改mysqli结果? (向结果添加一行),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26849231/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com