MySQL只回显一个元素


MySQL echos only one elemen

我有一个MySQL脚本的问题。脚本应该回显表中"gruppe"为$gruppe的每个元素。但我只得到一个输出。

<?php
if ( $_SERVER["REQUEST_METHOD"] == 'POST' ) {
    $gruppe = $_POST["gruppe"];
    $mail = $_POST["mail"];
    $betreff = $_POST["betreff"];
    $nachricht = $_POST["nachricht"];
    if (!empty($nachricht)) {
$sql = new rex_sql;
$sql->debugsql = 0; //Ausgabe Query
$sql->setQuery("SELECT * FROM $db_users WHERE gruppe = '$gruppe'");
for($i=0;$i<$sql->getRows();$i++)
{
$id_mail = $sql->getValue("id");
$mail_mail = $sql->getValue("email");
$ausgabe_mail = $mail_mail;
$sql->next();
}
}
}
?>
<?php echo $ausgabe_mail ?>

您的echo语句在循环之外。循环一个接一个地获取所有的电子邮件地址,并将它们存储在$mail_mail$ausgabe_mail中。循环的每次迭代都覆盖两个变量之前的内容。

循环结束后,回显$ausgabe_email的最后一个值

在循环内使用echo重试:

<?php
if ( $_SERVER["REQUEST_METHOD"] == 'POST' ) {
    $gruppe = $_POST["gruppe"];
    $mail = $_POST["mail"];
    $betreff = $_POST["betreff"];
    $nachricht = $_POST["nachricht"];
    if (!empty($nachricht)) {
      $sql = new rex_sql;
      $sql->debugsql = 0; //Ausgabe Query
      $sql->setQuery("SELECT * FROM $db_users WHERE gruppe = '$gruppe'");
      for($i=0;$i<$sql->getRows();$i++) {
        $id_mail = $sql->getValue("id");
        $mail_mail = $sql->getValue("email");
        $ausgabe_mail .= ',' . $mail_mail;
        $sql->next();
      }
      echo $ausgabe_mail;
    }
}
?>

EDIT:澄清后,用字符串连接扩展示例,并再次将echo移出循环。