获取用户名foreach电子邮件

时间:2015-10-21 08:41:28

标签: php html mysql

首先是我的代码:

<?php
   
if(isset($betreff) && isset($text)){

 $query= "SELECT email, anrede, vorname, nachname FROM newsletter";
 $result= mysql_query ($query);
 while ($row = mysql_fetch_array($result)) {
   $anrede= $row['anrede'];
   $vorname= $row['vorname'];
   $nachname= $row['nachname'];
   $email= $row['email'];
   
   $text = str_replace('[A]', $anrede, $text);
   $text = str_replace('[V]', $vorname, $text);
   $text = str_replace('[N]', $nachname, $text);
   $text = str_replace('[E]', $email, $text);
   $body=$text;
   
   strip_tags($text, '<br><b><img><a>');
   $headers  = 'MIME-Version: 1.0' . "\r\n";
   $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
   $headers .= 'From: Commeatus-IO <test@test.de>';
   mail($email, $betreff, $body, $headers);
   echo 'Email wurde gesendet an: ' . $email. '<br>';
 }

?>

现在,如果我插入文本[V](姓氏)或[E]电子邮件,此代码应通过电子邮件发送给数据库中的每个用户,并使用特定的电子邮件名称姓氏。但如果我这样做,它会在每封电子邮件中显示相同的姓氏和名称。为什么呢?

由于

2 个答案:

答案 0 :(得分:2)

这是因为您覆盖了包含func doSomething(){ var alert = UIAlertController(title: "Duplicate file", message: "A file with the same name already exists.", preferredStyle: UIAlertControllerStyle.alert) alert.addTextField(configurationHandler: configurationTextField) alert.addAction(UIAlertAction(title: "Ok", style: UIAlertActionStyle.default, handler:{ (UIAlertAction)in print("User click Ok button") print(self.textField.text) })) self.present(alert, animated: true, completion: { print("completion block") }) } func configurationTextField(textField: UITextField!){ textField.text = "Filename" } 占位符的文本,后续迭代无法再找到它们。

首先从$ text中提取[A][N][V][E]变量,这样您就不会覆盖模板。

你在循环结束时也错过了一个结束大括号。

您的代码应如下所示:

$body

答案 1 :(得分:0)

在第一次迭代[A]中,[V],[N],[E]被替换,它们不再存在于文本中,因此无法替换。

将文本保存在新变量中,并在每次迭代中执行以下操作:

<?php

if(isset($betreff) && isset($text)){
    $body_text = $text; //Add this
    $query= "SELECT email, anrede, vorname, nachname FROM newsletter";
    $result= mysql_query ($query);
    while ($row = mysql_fetch_array($result)) {
      $anrede= $row['anrede'];
      $vorname= $row['vorname'];
      $nachname= $row['nachname'];
      $email= $row['email'];

      $body_text = str_replace('[A]', $anrede, $body_text);
      $body_text = str_replace('[V]', $vorname, $body_text);
      $body_text = str_replace('[N]', $nachname, $body_text);
      $body_text = str_replace('[E]', $email, $body_text);

      strip_tags($body_text, '<br><b><img><a>');
      $headers  = 'MIME-Version: 1.0' . "\r\n";
      $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
      $headers .= 'From: Commeatus-IO <test@test.de>';
      mail($email, $betreff, $body_text, $headers);
      echo 'Email wurde gesendet an: ' . $email. '<br>';
    }
}

?>