query( $queryForEmailAdresses ); $eMailAdresses = $eMailErgebnis->fetchAll(); // print_r($eMailAdresses);die(); $queryForEinschreibefristen = "SELECT ". "cwsvjudo.wkParticipo_Events.id, ". "cwsvjudo.wkParticipo_Events.date, ". "cwsvjudo.wkParticipo_Events.meldefrist, ". "cwsvjudo.wkParticipo_Events.wkId, ". "cwsvjudo.wkParticipo_Events.bemerkungen, ". "cwsvjudo.wettkampfkalender.lfdeNr, ". "cwsvjudo.wettkampfkalender.Datum, ". "cwsvjudo.wettkampfkalender.Veranstaltung, ". "cwsvjudo.wettkampfkalender.Altersklassen ". "FROM ". "cwsvjudo.wkParticipo_Events LEFT JOIN cwsvjudo.wettkampfkalender ". "ON cwsvjudo.wkParticipo_Events.wkId = cwsvjudo.wettkampfkalender.lfdeNr ". "WHERE cwsvjudo.wkParticipo_Events.meldefrist > CURDATE() AND cwsvjudo.wkParticipo_Events.meldefrist <= DATE_ADD(CURDATE(), INTERVAL 1 WEEK) ". "ORDER BY wkParticipo_Events.meldefrist;"; $ergebnisEinschreibefristen = $mysqlConn->query( $queryForEinschreibefristen ); $someOptions=array(); if( empty($someOptions['dbCharset']) ) $someOptions['dbCharset'] = "ISO-8859-1"; //if( empty($someOptions['outCharset']) ) $someOptions['outCharset'] = "UTF-8";// das spätere, gewünschte Verhalten if( empty($someOptions['outCharset']) ) $someOptions['outCharset'] = "ISO-8859-1"; $dringendeEinschreibeFristen = array(); if( !empty($ergebnisEinschreibefristen) ){ while( $result = $ergebnisEinschreibefristen->fetch() ){ array_walk( $result, function (&$value, $key, $someOptions) { $value = iconv($someOptions['dbCharset'], $someOptions['outCharset'], $value); }, $someOptions ); array_push( $dringendeEinschreibeFristen, $result); } } $queryForEinschreibefristen = "SELECT ". "cwsvjudo.wkParticipo_Events.id, ". "cwsvjudo.wkParticipo_Events.date, ". "cwsvjudo.wkParticipo_Events.meldefrist, ". "cwsvjudo.wkParticipo_Events.wkId, ". "cwsvjudo.wkParticipo_Events.bemerkungen, ". "cwsvjudo.wettkampfkalender.lfdeNr, ". "cwsvjudo.wettkampfkalender.Datum, ". "cwsvjudo.wettkampfkalender.Veranstaltung, ". "cwsvjudo.wettkampfkalender.Altersklassen ". "FROM ". "cwsvjudo.wkParticipo_Events LEFT JOIN cwsvjudo.wettkampfkalender ". "ON cwsvjudo.wkParticipo_Events.wkId = cwsvjudo.wettkampfkalender.lfdeNr ". "WHERE cwsvjudo.wkParticipo_Events.meldefrist > CURDATE() AND cwsvjudo.wkParticipo_Events.meldefrist <= DATE_ADD(CURDATE(), INTERVAL 4 WEEK) ". "ORDER BY wkParticipo_Events.meldefrist;"; $ergebnisEinschreibefristen = $mysqlConn->query( $queryForEinschreibefristen ); $weitereEinschreibefristen = array(); if( !empty($ergebnisEinschreibefristen) ){ while( $result = $ergebnisEinschreibefristen->fetch() ){ array_walk( $result, function (&$value, $key, $someOptions) { $value = iconv($someOptions['dbCharset'], $someOptions['outCharset'], $value); }, $someOptions ); array_push( $weitereEinschreibefristen, $result); } } $mysqlConn = NULL; } catch(PDOException $db_error){ print "Error!: " . $db_error->getMessage() . "
"; die(); } ?> wkParticipo -Adminbereich - Newslettertest "judo.cwsv@t-online.de") ); // print_r( $eMailAdr ); die("Testzwecke"); $newsletter['subject'] = "=?UTF-8?B?".base64_encode("Newsletter anstehende Meldefristen und Wettkämpfe")."?="; $newsletter['headers'] = "From: noreply.wettkampflaner@cwsvjudo.bplaced.net\r\nReply-To: cwsvjudo@arcor.de\r\nReturn-Path: cwsvjudo@arcor.de\r\nX-Mailer: PHP/".phpversion()."\r\nContent-Type: text/plain; charset=UTF-8"; $newsletter['message'] = "Meldefristen diese Woche:\r\n\r\n"; if( empty($dringendeEinschreibeFristen) ) $newsletter['message'] .= "Keine!\r\n"; foreach( $dringendeEinschreibeFristen as $event ){ // var_dump($event); if(!empty($event['bemerkungen'])){ $tmpJson = json_decode( mb_convert_encoding($event['bemerkungen'], 'UTF-8', 'ISO-8859-1'), true); if($tmpJson){ $event['Datum'] = $tmpJson['Datum']; $event['Veranstaltung'] = $tmpJson['Veranstaltung']; $event['Altersklassen'] = $tmpJson['Altersklassen']; $event['bemerkungen'] = $tmpJson['bemerkungen']; } } $newsletter['message'] .= "\tDatum: ".$event['Datum']."\r\n"; $newsletter['message'] .= "\tWettkampf: ".html_entity_decode( $event['Veranstaltung'] )."\r\n"; $newsletter['message'] .= "\tAltersklassen: ".$event['Altersklassen']."\r\n"; $newsletter['message'] .= "\tMeldefrist: ".$event['meldefrist']."\r\n"; $newsletter['message'] .= "\tLink: http://cwsvjudo.bplaced.net/pages/desktop/wkParticipo/showWkEvent.php?eventId=".$event['id']."\r\n"; if( !empty($event['bemerkungen']) ) $newsletter['message'] .= "\tBemerkungen: ".$event['bemerkungen']."\r\n"; $newsletter['message'] .= "\t\r\n"; } $newsletter['message'] .= "Weitere Wettkämpfe der kommenden Wochen:\r\n\r\n"; if( empty($weitereEinschreibefristen) ) $newsletter['message'] .= "Erstmal Keine\r\n"; foreach( $weitereEinschreibefristen as $event ){ // var_dump($event); if(!empty($event['bemerkungen'])){ $tmpJson = json_decode( mb_convert_encoding($event['bemerkungen'], 'UTF-8', 'ISO-8859-1'), true); // var_dump( $tmpJson, json_decode( $event['bemerkungen'], true) ); if($tmpJson){ $event['Datum'] = $tmpJson['Datum']; $event['Veranstaltung'] = $tmpJson['Veranstaltung']; $event['Altersklassen'] = $tmpJson['Altersklassen']; $event['bemerkungen'] = $tmpJson['bemerkungen']; } } $newsletter['message'] .= "\tDatum: ".$event['Datum']."\r\n"; $newsletter['message'] .= "\tWettkampf: ".html_entity_decode( $event['Veranstaltung'] )."\r\n"; $newsletter['message'] .= "\tAltersklassen: ".$event['Altersklassen']."\r\n"; $newsletter['message'] .= "\tMeldefrist: ".$event['meldefrist']."\r\n"; $newsletter['message'] .= "\tLink: http://cwsvjudo.bplaced.net/pages/desktop/wkParticipo/showWkEvent.php?eventId=".$event['id']."\r\n"; if(!empty($event['bemerkungen'])) $newsletter['message'] .= "\tBemerkungen: ".$event['bemerkungen']."\r\n"; $newsletter['message'] .= "\t\r\n"; } $newsletter['message'] .= "\r\n\r\nDiese Mail wird automatisch durch den Wettkampfplaner des Chemnitzer WSV (http://cwsvjudo.bplaced.net/pages/desktop/wkParticipo/) erstellt. Und dieser ist immer noch in einer Testphase. Sollte er also Fehler enthalten oder irgendwelche Probleme verursachen, meldet dies bitte.\r\n"; if( isset($_GET['sendNewsletter']) and (!empty($weitereEinschreibefristen) or !empty($dringendeEinschreibeFristen) )){ foreach( $eMailAdresses as $adr ){ if( !empty($adr) ){ mail( $adr['eMail'] , $newsletter['subject'] , $newsletter['message'], $newsletter['headers'] ); // echo $adr['eMail'].$newsletter['subject'].$newsletter['message'].$newsletter['headers']; echo "Newsletter gesendet an ".$adr['eMail']."\n"; } } } else{ echo "Nicht gesendet!"; } ?>