Birthday Mail Extension

Du hast Probleme beim Einbau oder bei der Benutzung eines Mods? In diesem Forum bist du richtig.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Werbung
Mitglied
Beiträge: 712
Registriert: 11.06.2004 12:38
Wohnort: Ausland

Birthday Mail Extension

Beitrag von Werbung »

Code: Alles auswählen

includes/page_header.php

#
#-----[ FIND ]------------------------------------------------
#

		$template->assign_var("GREETING_POPUP",
			"<script language=\"Javascript\" type=\"text/javascript\"><!--
			window.open('".append_sid('birthday_popup.'.$phpEx)."', '_phpbbprivmsg', 'HEIGHT=225,resizable=yes,WIDTH=400');
			//-->
			</script>");

#
#-----[ REPLACE BY ]------------------------------------------
#

// START Birthday Mail Extension
	$sql = "SELECT * FROM " . USERS_TABLE . " WHERE user_id = " . $userdata['user_id'];
	if ( !($result = $db->sql_query($sql)) )
	{
		message_die(GENERAL_ERROR, $lang['bd_sqlerror']);
	}
	
	while( $row = $db->sql_fetchrow($result) )
	{
		$bd_mail = intval($row['user_email']);
	}

	$sql = "SELECT * FROM " . USERS_TABLE . " WHERE user_id = $user_id";
	if ( !($result = $db->sql_query($sql)) )
	{
		message_die(GENERAL_ERROR, $lang['bd_sqlerror']);
	}
	while ($row = $db->sql_fetchrow($result))
		$emailer->from($board_config['board_email']); 
		$emailer->replyto($board_config['board_email']); 
	
		$emailer->email_address(trim($row['user_email'])); 
		$emailer->use_template("birthday", $row['user_lang']);
		$emailer->set_subject($lang['bd_subject']);

		$emailer->assign_vars(array(
			'USERNAME' => preg_replace($unhtml_specialchars_match, $unhtml_specialchars_replace, substr(str_replace("\'", "'", $row['username']), 0, 25)),
			'EMAIL_SIG' => str_replace('<br />', "\n", "-- \n" . $board_config['board_email_sig']),
			'BOARDNAME' => str_replace('<br />', "\n", "-- \n" . $board_config['sitename'])
		);
		$emailer->send();
		$emailer->reset();
	}
// END Birthday Mail Extension
Hab dieses ausgeführt und dann bekomm ich diese fehlermeldung:

Code: Alles auswählen

rse error: parse error, unexpected ';' in /../../forum/includes/page_header.php on line 365
also.... ich peil nicht was da jetzt falsch sein kann... hier mal nen auzug von meiner page_header.php Zeile 325 bis 372

Code: Alles auswählen

// Start add - Birthday MOD
// see if user has or have had birthday, also see if greeting are enabled
	if ( $userdata['user_birthday']!=999999 && $board_config['birthday_greeting'] && create_date('Ymd', time(), $board_config['default_timezone'])  >= $userdata['user_next_birthday_greeting'].realdate ('md',$userdata['user_birthday'] ) )
	{
		$sql = "UPDATE " . USERS_TABLE . "
			SET user_next_birthday_greeting = " . (create_date('Y', time(), $board_config['board_timezone'])+1) . "
			WHERE user_id = " . $userdata['user_id'];
		if( !$status = $db->sql_query($sql) )
		{
			message_die(GENERAL_ERROR, "Could not update next_birthday_greeting for user.", "", __LINE__, __FILE__, $sql);
		}
// START Birthday Mail Extension
	$sql = "SELECT * FROM " . USERS_TABLE . " WHERE user_id = " . $userdata['user_id'];
	if ( !($result = $db->sql_query($sql)) )
	{
		message_die(GENERAL_ERROR, $lang['bd_sqlerror']);
	}
	
	while( $row = $db->sql_fetchrow($result) )
	{
		$bd_mail = intval($row['user_email']);
	}

	$sql = "SELECT * FROM " . USERS_TABLE . " WHERE user_id = $user_id";
	if ( !($result = $db->sql_query($sql)) )
	{
		message_die(GENERAL_ERROR, $lang['bd_sqlerror']);
	}
	while ($row = $db->sql_fetchrow($result))
		$emailer->from($board_config['board_email']); 
		$emailer->replyto($board_config['board_email']); 
	
		$emailer->email_address(trim($row['user_email'])); 
		$emailer->use_template("birthday", $row['user_lang']);
		$emailer->set_subject($lang['bd_subject']);

		$emailer->assign_vars(array(
			'USERNAME' => preg_replace($unhtml_specialchars_match, $unhtml_specialchars_replace, substr(str_replace("\'", "'", $row['username']), 0, 25)),
			'EMAIL_SIG' => str_replace('<br />', "\n", "-- \n" . $board_config['board_email_sig']),
			'BOARDNAME' => str_replace('<br />', "\n", "-- \n" . $board_config['sitename'])
		);
		$emailer->send();
		$emailer->reset();
	}
// END Birthday Mail Extension
	} //Sorry user shall not have a greeting this year
// End add - Birthday MOD
kann mir einer vielleicht sagen, was dadrinnen nicht stimmt... ich hab doch nur das gemacht, was in der install stand... *aufreg*

danke schon mal für die hilfe!
Der Meister sprach: "Lernen ist eine Tätigkeit, bei der man das Ziel nie erreicht und zugleich immer fürchten muss, das schon Erreichte wieder zu verlieren."
Benutzeravatar
Leuchte
Ehemaliges Teammitglied
Beiträge: 9179
Registriert: 26.05.2003 14:57
Wohnort: Duisburg
Kontaktdaten:

Beitrag von Leuchte »

Versuchs mal mit
Finde

Code: Alles auswählen

         'BOARDNAME' => str_replace('<br />', "\n", "-- \n" . $board_config['sitename']) 
      );
Ersetze mit

Code: Alles auswählen

         'BOARDNAME' => str_replace('<br />', "\n", "-- \n" . $board_config['sitename'])) 
      );
Werbung
Mitglied
Beiträge: 712
Registriert: 11.06.2004 12:38
Wohnort: Ausland

habs versucht...

Beitrag von Werbung »

dann kommt die fehler meldung:

Code: Alles auswählen

Parse error: parse error, unexpected '}' in /../../forum/includes/page_header.php on line 421
vielleicht hilft dir es besser, wenn du mein page_header.txt siehs. des ist mit deiner änderung von vorhin!
Der Meister sprach: "Lernen ist eine Tätigkeit, bei der man das Ziel nie erreicht und zugleich immer fürchten muss, das schon Erreichte wieder zu verlieren."
DesiWeb

Beitrag von DesiWeb »

Hallo zusammen....

Ich habe auch ein kleines Problem mit diesem MOD. Wenn ich die *page_header.php* auf den Server lade und dann das Board aufrufe, dann kommt nur eine weisse leere Seite :cry: und sonst nichts.

ich habe da mal die page_header.php als txt auf den Server geladen ---> guckst Du hier

Mein Board ist ein 2.0.4 - Laut Installations-Datei sollte das kein Problem darstellen.

Herzlchen Dank für die Hilfe :P
Acid
Ehrenadmin
Beiträge: 12195
Registriert: 26.04.2001 02:00
Wohnort: Berlin

Beitrag von Acid »

Sicher, das die Seite leer ist und keine Parse Errors angezeigt werden?
'BOARDNAME' => str_replace('<br />', "\n", "-- \n" . $board_config['sitename'])
In dieser Zeile fehlt am Ende noch eine Klammer.
'BOARDNAME' => str_replace('<br />', "\n", "-- \n" . $board_config['sitename']))
Und dann ist da noch irgendwo ´ne geschweifte Klammer zuviel.

Code: Alles auswählen

        }
// END Birthday Mail Extension
..testweise mal diese Klammer mit // auskommentieren.
DesiWeb

Beitrag von DesiWeb »

Hallo Acid

perfekt... ! :) vielen Dankfür die Hilfe.
Warum ich aber keine Fehlermeldung gesehen habe ist mir noch immer ein Rätsel. Egal.

Was mir an diesem Mod nun gar nicht gefällt, ist dass das eMail erst versandt wird, wenn sich der User am Board anmeldet. Wie kann ich es anstellen, dass automatsch an dem Tag, an welchem der User Geburtstag hat das Glückwunschmail bekommt?
Benutzeravatar
BraveEagle
Mitglied
Beiträge: 1884
Registriert: 16.01.2003 18:05
Wohnort: born 2 be a Paelzer
Kontaktdaten:

Beitrag von BraveEagle »

Ich habe zwar keine Fehlermeldung, aber an das "Geburtstagskind" wird keine EMail versendet. Jemand ne Idee?

Greetz BE
Benutzeravatar
BraveEagle
Mitglied
Beiträge: 1884
Registriert: 16.01.2003 18:05
Wohnort: born 2 be a Paelzer
Kontaktdaten:

Beitrag von BraveEagle »

kann mir keiner helfen?
tim.brauer
Mitglied
Beiträge: 47
Registriert: 13.10.2004 10:35
Kontaktdaten:

Beitrag von tim.brauer »

guck mal ob du das richtige datum eingestellt hast ...

Next birthday popup year: 2005

sollte im userprofil stehen...
Benutzeravatar
BraveEagle
Mitglied
Beiträge: 1884
Registriert: 16.01.2003 18:05
Wohnort: born 2 be a Paelzer
Kontaktdaten:

Beitrag von BraveEagle »

k maybe liegt da das Problem. Ich habe das weder im Profil noch im ACP im Konfig. bereich :(
Antworten

Zurück zu „phpBB 2.0: Mod Support“