首先是我的代码:
<?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]
电子邮件,此代码应通过电子邮件发送给数据库中的每个用户,并使用特定的电子邮件名称姓氏。但如果我这样做,它会在每封电子邮件中显示相同的姓氏和名称。为什么呢?
由于
答案 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>';
}
}
?>