Zum Inhalt springen

Cronjob in Verbindung mit df_dmailer

Erstellt am 28. März 2006 · 2 Antworten · letzte Antwort am 29. März 2006

Tags: Direct Mail, Frage

dabjoern ·

Hi Leute,

ich setze direct_mail ein, um meine Newsletter zu versenden. Außerdem habe ich die df_dmailer Extension installiert, um meine Empfänger persönlich anreden zu können. ALles läuft soweit spitze. Jetzt bin ich am Cronjob angelangt. Ich habe die Datei typo3/ext/direct_mail/dmailerd.php zunächst (wie man sieht in .php) umbenannt. Außerdem habe ich den Pfad

$dir = dirname("/.../.../typo3/ext/direct_mail/mod/dmailerd.phpcron");

angepasst.

Beim Ausführen erhalte ich jedoch folgende Fehlermeldung:

Fatal error: Call to a member function on a non-object in /kunden/128411_99094/projects/typo3_tempus24/typo3/ext/df_dmailer/class.ux_t3lib_dmailer.php on line 46

Hat jemand diesbzgl. einen Tipp für mich?

Edit: Interessanterweise habe ich schon eine Mail vom dmailer System erhalten: DMAILER mid:11 JOB BEGIN aber angekommen ist kein Newsletter bei mir...

Grüße
dabjoern

McGregor ·

Hi!

Ich habe damit auch tagelang rumgerätselt und festgestellt, dass die dmailerd.phpcron einige Fehler enthält. Ich habe diese dann angepasst. Siehe nachstehend. Dabei war wichtig die Variable $dir anzupassen, den Interpreterpfad (#!/usr/bin/php -q), sowie einige defines (besonders für t3lib). Danach hat es dann auch funktioniert (Ich hatte - glaub ich - auch deine Fehlermeldung).

#!/usr/bin/php -q
<?php
/**
 *
 * @package TYPO3
 * @subpackage tx_directmail
 * @version $Id: dmailerd.phpcron,v 1.3 2005/05/18 12:28:32 tkahler Exp $
 */

$dir = $HTTP_ENV_VARS["PWD"];
define("PATH_typo3", dirname(dirname(dirname($dir)))."/");
define("PATH_site", dirname(PATH_typo3)."/");
define("PATH_t3lib", PATH_site."t3lib/");
define("PATH_typo3conf", PATH_site."typo3conf/");	// Typo-configuraton path
define('TYPO3_MODE','BE');

if (substr($dir,strlen(PATH_site))!='typo3/ext/direct_mail/mod')	{
	die("Wrong path... This '".substr($dir,strlen(PATH_site))."'\n should be the last part of >>>>".$dir."<<<<\n\n"); require_oncepath_t3libclasst3lib_divphp="" require_oncepath_t3libclasst3lib_extmgmphp="" require_oncepath_t3libconfig_defaultphp="" if="" defined="" typo3_db="t3lib_div::makeInstance('t3lib_DB');" die="" the="" configuration="" file="" was="" not="" included="" require_oncepath_t3libclasst3lib_dbphp="" database="" library="" require_once="" path_t3libclasst3lib_htmlmailphp="" path_t3libclasst3lib_dmailerphp="" connect="" to="" result="$GLOBALS['TYPO3_DB']-">sql_pconnect(TYPO3_db_host, TYPO3_db_username, TYPO3_db_password);
if (!$result)	{
	die("Couldn't connect to database at ".TYPO3_db_host);
}
$GLOBALS['TYPO3_DB']->sql_select_db(TYPO3_db);

$htmlmail = t3lib_div::makeInstance("t3lib_dmailer");
$htmlmail->start();
$htmlmail->runcron();


?>

Grüße
McGregor

P.S. Ich habe die Datei nicht umbenannt...

ms70 ·

das leidige Thema direct_mail :-)

Crontab arbeitet am besten mit der Datei
dmailerd.phpsh aus der Extension "sr_direct_mail_ext"
(typo3conf/ext/sr_direct_mail_ext/mod/)