如何将php中的所有行放入电子邮件?

如何将php中的所有行放入电子邮件?,php,email,Php,Email,我编写了一个脚本,应该从数据库中选择所有用户,然后选择他们评论的所有匹配项并将其发送出去。但它只发送最后选择的匹配项 require 'connection.php'; $query = mysqli_query($conn, "SELECT * FROM tipuser"); foreach($query as $email){ $username = $email['id']; $datumted = date("Y-m-d"); $sql = mysqli_qu

我编写了一个脚本,应该从数据库中选择所有用户,然后选择他们评论的所有匹配项并将其发送出去。但它只发送最后选择的匹配项

require 'connection.php';
$query = mysqli_query($conn, "SELECT * FROM tipuser");


foreach($query as $email){
    $username = $email['id'];
    $datumted = date("Y-m-d");
    $sql = mysqli_query($conn, "SELECT * FROM zapasy 
                                  WHERE komentator1 = '$username' AND datum = '$datumted' 
                                    OR komentator2 = '$username' AND datum = '$datumted'");

    while ($xx = mysqli_fetch_assoc($sql)) { 
        $datum = $xx['datum'];
        $projekt = $xx['projekt'];

        $projektquery = mysqli_query($conn, "SELECT * FROM projekt 
                                             WHERE id = '$projekt'");
        $projektpole = mysqli_fetch_array($projektquery);
        $projektx = $projektpole['name'];

        $stream = $xx['stream'];
        $tv = $xx['televize'];
        $team1 = $xx['domaci'];
        $team2 = $xx['hoste'];
        $cas = $xx['cas'];   
        $message = "$datum | $cas | $team1 v $team2 | $projektx | $stream | $tv \n";
    }

    $datex = date('d/m/Y');
    $to = $email['name'];
    $subject = "Vaše zápasy $datex";
    $headers = 'From: admin@sportsradio.cz';
    mail($to, $subject, $message, $headers);
}

$message
是它发送的文本,我需要在一封邮件中发送所有选定的匹配项。

每次迭代while循环都会覆盖
$message
。最后一个是你收到的邮件。您应该在每次迭代中附加到
$message

require 'connection.php';
$query = mysqli_query($conn, "SELECT * FROM tipuser");

foreach($query as $email){
    $message = ''; // "init" $message
    $username = $email['id'];
    $datumted = date("Y-m-d");
    $sql = mysqli_query($conn, "SELECT * FROM zapasy 
                                  WHERE komentator1 = '$username' AND datum = '$datumted' 
                                    OR komentator2 = '$username' AND datum = '$datumted'");

    while ($xx = mysqli_fetch_assoc($sql)) { 
        $datum = $xx['datum'];
        $projekt = $xx['projekt'];

        $projektquery = mysqli_query($conn, "SELECT * FROM projekt 
                                             WHERE id = '$projekt'");
        $projektpole = mysqli_fetch_array($projektquery);
        $projektx = $projektpole['name'];

        $stream = $xx['stream'];
        $tv = $xx['televize'];
        $team1 = $xx['domaci'];
        $team2 = $xx['hoste'];
        $cas = $xx['cas'];   
        $message .= "$datum | $cas | $team1 v $team2 | $projektx | $stream | $tv \n"; // .= appends to $message
    }

    $datex = date('d/m/Y');
    $to = $email['name'];
    $subject = "Vaše zápasy $datex";
    $headers = 'From: admin@sportsradio.cz';
    mail($to, $subject, $message, $headers);
}

有关字符串运算符的信息:

您正在覆盖
$message
,而不是附加到它。最后一个保持不变。@kerbholz好吧,我怎样才能附加到它?使用字符串运算符:。@kerbholz好吧,我不知道如何使用它。没问题,我发布了一个答案,看看是否有用。我在添加的行中添加了
/
注释。