gpt4 book ai didi

php - 使用 php foreach 获取电子邮件中的数据

转载 作者:行者123 更新时间:2023-11-29 18:02:46 25 4
gpt4 key购买 nike

所以我有一个查询,从数据库中提取数据并将其放入表中,它也进入一个数组,如下所示:

<table class="list">
<tr>
<th>Rank</th>
<th>Username </th>
<th> Most Steps</th>
<th> Average Steps </th>
<th> Total Steps </th>
</tr>

<?php //get info for scores in the league
if ($result = $link->query("SELECT SUM(DISTINCT step_count.steps) as total, logins.nickname, MAX(step_count.steps) as maxsteps, ROUND(AVG (DISTINCT step_count.steps)) as average, logins.Email as email
FROM step_count
INNER JOIN logins on
step_count.unique_id=logins.unique_id
INNER JOIN leagues ON
leagues.unique_id=logins.unique_id
WHERE step_count.date BETWEEN '$info[start_date]' AND '$info[end_date]'
GROUP BY logins.unique_id
ORDER BY `total` DESC
", MYSQLI_USE_RESULT))
$rank = 1;


//add data to an arry for email use
$leaguedata = array();

while($row = $result->fetch_assoc()){
$leaguedata[] = $row; ?>


<tr>
<td><?php echo $rank++; ?></td>
<td><?php echo $row['nickname']; ?></td>
<td><?php echo $row['maxsteps']; ?></td>
<td><?php echo $row['average']; ?></td>
<td><?php echo $row['total']; ?></td>
</tr>

<?php } $result->close(); ?>

</table>

然后,我有一个区域,在联赛结束后我会在其中发送包含结果的电子邮件:

<?php //if admin and the date has past, change active to 0
if ($info['role'] == "ADMIN") {
if ($info['end_date'] < date("Y-m-d")) {

$endleague = "UPDATE leagues SET active = 0
WHERE joincode='$joincode'";

mysqli_query($link,$endleague);

echo "<h3><br/>This league has now ended, results will be sent to everyone via email!</h3>";

//send league ending information
$endrank = 1;

$subject = "$league_name has ended!";
$body="Results are in and these were the final scores:".PHP_EOL;
$body.="$endrank++".PHP_EOL;

$headers = "From: localhost";

foreach ($leaguedata as $email){
mail($email['email'], $subject, $body, $headers); }


}
} ?>

我不确定 foreach 循环如何在电子邮件正文本身中工作,以及如何让 $endrank++ 在正文中工作。

最佳答案

您的 endrank 行可能是:

$subject = "$league_name has ended!";
$body="Results are in and these were the final scores:".PHP_EOL;
$endrank++;
$body.=$endrank.PHP_EOL;

对于 foreach 语句,假设您想从行中添加一些数据:

// Keep anything static between all emails outside of your loop
$endrank = 1;
$endrank++;
$subject = "$league_name has ended!";
$headers = "From: localhost";

// For your big array of all your rows ($leaguedata), do something for each row
foreach ($leaguedata as $row){

// Initialise your new text body
$body;

// Access anything from each row as $row['something']
$body .= "Hello, $row['nickname']".PHP_EOL;

// Pop in the league results which are common to all the emails
$body .="Results are in and these were the final scores:".PHP_EOL;
$body .=$endrank.PHP_EOL;

// Send the email
mail($row['email'], $subject, $body, $headers);
}

关于php - 使用 php foreach 获取电子邮件中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48191070/

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