salü @ll
ich möchte in der extension newsmailer den namen des empfängers als anrede einfügen. leider wird immer nur ein und derselbe name eingesetzt :-/
sieht jemand den fehler und hat jemand von euch einen tipp?
hier die php funktion:
PHP-Code:
function sendAbo(){
$sql = "SELECT email,name,title FROM tt_address WHERE pid=".intval($this->config['tt_addresspid'])." AND hidden=0";
$res = $GLOBALS['TYPO3_DB']->sql(TYPO3_db,$sql);
while($row = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($res)){
$abo[] = $row['email'];
$name[] = $row['name'];
}
$sql = "SELECT uid,content,status FROM tx_newsmailer ORDER BY uid DESC LIMIT 1";
$res = $GLOBALS['TYPO3_DB']->sql(TYPO3_db,$sql);
list($uid,$newsletter,$status) = mysql_fetch_row($res);
if($status=="gesendet"){
$content = '<br><br><b>Ihr aktueller Newsletter ist bereits versendet worden.<br>Bitte erstellen Sie einen neuen Newsletter.</b><br>';
}else{
if($newsletter !=""){
$content = '<br><br><b>Ihr aktueller Newsletter wird nun an alle Abonnenten versendet.</b><br>';
(stristr($this->config['subject'],"{datum}"))?$subject=str_replace("{datum}",date("d.m.Y",time()),$this->config['subject']:sad:$subject=$this->config['subject'];
if (is_array($abo)) {
foreach($name as $anrede){
(stristr($newsletter,"{name}"))?$newsletter=str_replace("{name}",$anrede,$newsletter:sad:$newsletter=$newsletter;
}
foreach($abo as $sendto){
mail($sendto,$subject,$newsletter,$this->defaultHeader);
$content.="<br>".$sendto;
}
}
}
}
$date = date("Y-m-d",time());
$sql = "UPDATE tx_newsmailer SET status='gesendet',date='".$date."' WHERE uid=".$uid;
mysql_query($sql);
$sql = "UPDATE tt_news SET tx_newsmailer_newsletter = 0 WHERE tx_newsmailer_newsletter = 1 AND pid =".$this->config['tt_newspid'];
$res = mysql_query($sql);
return $content;
}