Hallo liebe Community / Entwickler, ich habe einen Cronjob, der einigen unserer Händler jeden Tag um Mitternacht eine Liste schickt, ob ein Artikel auf Lager ist, oder nicht. Dieses Skript funktionierte mit 2.1.4 problemlos. Nun mit GX3 versendet das Skript keine E-Mails mehr. Das Problem ist, dass ich einen Pfad zum Anhang angebe, Gambio aber den Anhang in einem Verzeichnis uploads/attachements erwartet, die Datei aber dort nicht hin kopiert. Ich habe auch die xtc_php_mail - funktion "nachgebaut", was natürlich zu keinem anderen Ergebnis führte. Hier der relevante Teil des Skripts: PHP: <?phpif(!is_file("../lagerlisten/".$filename)){ echo "Fehler beim Schreiben der Lagerliste";}else{ $emailanhang = "../lagerlisten/".$filename;}//empfänger auslesen$lines = file("../lagerlisten/empfaenger.txt");foreach($lines as $email_adresse){$fehler = 0; //versenden /*neu mit GXService*/ try { $emailService = StaticGXCoreLoader::getService('Email'); // Sender $sender = MainFactory::create('EmailContact', MainFactory::create('EmailAddress', 'info@xxx.xx'), MainFactory::create('ContactType', ContactType::SENDER), MainFactory::create('ContactName', 'Extracross Lagerliste')); // Recipient $recipient = MainFactory::create('EmailContact', MainFactory::create('EmailAddress', trim((string)$email_adresse)), MainFactory::create('ContactType', ContactType::RECIPIENT), MainFactory::create('ContactName', (string)$email_adresse)); // Subject & Content $subject = MainFactory::create('EmailSubject', 'Extracross Lagerliste'); $content = MainFactory::create('EmailContent',(nl2br($email_text))); // Create Email Object $email = $emailService->create($sender, $recipient, $subject, $content); // Content Plain $email->setContentPlain(MainFactory::create('EmailContent', $email_text)); // Reply To $reply_email_address = 'info@xxx.xx'; if(!empty($reply_email_address)) { $replyTo = MainFactory::create('EmailContact', MainFactory::create('EmailAddress', $reply_email_address), MainFactory::create('ContactType', ContactType::REPLY_TO), MainFactory::create('ContactName', (string)$reply_name)); $email->setReplyTo($replyTo); } // BCC Contacts $forwarding_to=array(); if(!empty($forwarding_to)) { $email->setBcc(MainFactory::create('ContactCollection')); $bccAddressesArray = explode(',', $forwarding_to); foreach($bccAddressesArray AS $emailAddress) { $bccContact = MainFactory::create('EmailContact', MainFactory::create('EmailAddress', trim($emailAddress)), MainFactory::create('ContactType', ContactType::BCC), MainFactory::create('ContactName', '')); $email->getBcc()->add($bccContact); } } // Attachments // EmailService does not currently use a display name for the attachments. $attachments = MainFactory::create('AttachmentCollection'); if(!empty($emailanhang)) { if(is_string($emailanhang)) { $attachmentPath = MainFactory::create('AttachmentPath', (string)$emailanhang); $attachments->add(MainFactory::create('EmailAttachment', $attachmentPath)); print_r($attachments); } } // } $email->setAttachments($attachments); // Stores and sends the email object. $emailService->send($email); $result = true; }catch(Exception $ex) { $log = LogControl::get_instance(); $log->notice($ex->getMessage()); $result = false; } /*alt xtc_php_mail*/ //if(xtc_php_mail('info@xxx.xx', 'Extracross Lagerliste', $email, $email, '', 'info@xxx.xx', 'Extracross',$emailanhang, '', 'Extracross Lagerliste', nl2br($email_text), $email_text)){ if($result==true){ // Alles ok echo "Lagerliste versendet an ".$email_adresse.'<br />'.PHP_EOL; }else{ $fehler = 1; echo "Fehler beim Versenden der Lagerliste an ".$email_adresse.'<br />'.PHP_EOL; }}if($fehler == 0){ echo PHP_EOL."<br />Alles OK!";}?> Folgende Fehlermeldung wird im Log gespeichert: Code: 2016-08-08 00:01:00 (3cd2028c52140914b0f125e61ba7b8f3) USER NOTICE: "Attachment file does not exist or is not a file: /www/htdocs/xxx/uploads/attachments/email_id_340-20160808_00_01_lagerliste.txt" in /www/htdocs/xxx/cronjobs/lagerliste.php:165 backtrace:#0 File: /www/htdocs/xxx/cronjobs/lagerliste.php:165 Request: GET /cronjobs/lagerliste.php - duration: ~811ms - server: Apache - server address: 85.13.145.93 - user agent: cronBROWSE v0.92 - remote address: 3cd2028c52140914b0f125e61ba7b8f3 Handelt es sich hierbei um einen Bug oder muss man die Attachmentfunktion noch irgendwie anders aufrufen? Vielen Dank im Voraus für Eure Hilfe LG Steffi