Php 从Mysql获取变量并将电子邮件正文放入循环中

Php 从Mysql获取变量并将电子邮件正文放入循环中,php,mysql,email,phpmailer,Php,Mysql,Email,Phpmailer,因此,我有一个循环,它向所有记录发送电子邮件,其中hours\u left send()){ 回显“邮件错误(“.str_replace(@)”,“@;”,$row[“email”])。$mail->ErrorInfo.; 中断;//放弃发送 }否则{ echo“消息发送至:“..row['first_name']”.(“.str_replace”(“@”、“@;”、$row['email']))。”); //预先声明更安全的更新方式 if(!($stmt=$mysqli->prep

因此,我有一个循环,它向所有记录发送电子邮件,其中
hours\u left send()){
回显“邮件错误(“.str_replace(@)”,“@;”,$row[“email”])。$mail->ErrorInfo.
; 中断;//放弃发送 }否则{ echo“消息发送至:“..row['first_name']”.(“.str_replace”(“@”、“@;”、$row['email']))。”)
; //预先声明更安全的更新方式 if(!($stmt=$mysqli->prepare(“更新上次发送的客户机集”=?其中电子邮件=?”){ echo“准备失败:(“$mysqli->errno.”“$mysqli->error; } 如果(!$stmt->bind_param('ss',$today,$row['email'])){ echo“绑定参数失败:(“$stmt->errno.”“$stmt->error; } 如果(!$stmt->execute()){ echo“执行失败:(“$stmt->errno.”“$stmt->error; } $stmt->close(); } //清除下一个循环的所有地址和附件 $mail->clearAddresses(); }

我很难准确地说出我应该在谷歌上搜索什么,所以现在我在这里。哦,我也在使用PHPMailer,我正在发送和访问数据库,除了想办法插入接收此消息的人的名字之外,一切都在进行中。

替换这一行:

$mail->Body = "hello" ; // <----this is where I'm clueless
$mail->Body = "hello {$row['first_name']}";
$name = $row['first_name']; $mail->Body = "hello $name";
$name = $row['first_name']; $mail->Body = "hello ".$name;
或:

$mail->Body = "hello" ; // <----this is where I'm clueless
$mail->Body = "hello {$row['first_name']}";
$name = $row['first_name']; $mail->Body = "hello $name";
$name = $row['first_name']; $mail->Body = "hello ".$name;
或:

$mail->Body = "hello" ; // <----this is where I'm clueless
$mail->Body = "hello {$row['first_name']}";
$name = $row['first_name']; $mail->Body = "hello $name";
$name = $row['first_name']; $mail->Body = "hello ".$name;

PS:您必须在while循环中执行此操作。

$name=$row['first_name'$邮件->正文=“你好$name”-试试看。@Fred ii-那么我将在while循环的外部/之前正确设置该变量?您是否向每个用户发送相同的消息?没有定制?在bassxzero的情况下,这一点很好。我也在给他们发同样的信息,但只需要说出他们的名字,以及他们还剩多少小时。我很确定freds方法可以工作,但只需稍加修改:
$name=$row['first_name'$邮件->Body=“你好”$name
我将所有这些都放在while循环中。这正是您应该做的。我想你会知道我是想让你在循环中使用这个答案的,下面的答案是我所说的内容的复写本,我刚刚编辑了我的答案,总结了评论中提到的备选方案。如果这解决了您的问题,请将此标记为