Seite 1 von 2

Benachrichtigung bei neuem Post (mal wieder)

Verfasst: 11.05.2004 23:01
von Everlong
Hallo,

ich habe schon die Suchfunktion gequält und auch einige interessante Links gefunden aber nicht das was ich suche.

Ich suche ein kleines Script, bzw. Quelltext das ich bei jedem neuen Post und bei jedem neuerstellten Thema eine Email erhalte mit dem Usernamen, Subject und dem Link. Ich habe in der posting.php schon mit der mail() funktion herrumgefuscht allerdings mit mäßigem Erfolg. :(

Hat jemand soetwas zufällig rumzuliegen? ;)


Danke. :D

Verfasst: 11.05.2004 23:13
von Markus67
Hi ...

Hier schon durchgewühlt ?

http://www.phpbb.de/viewtopic.php?t=14884

Markus

---- edit ----

hab noch einen ... :D
http://www.phpbb.de/viewtopic.php?t=45880

Verfasst: 11.05.2004 23:17
von Everlong
Ja, dort wird darüber Philosophiert wie man die Benachrichtung so ändern kann:
Wenn ich mir die Dateien des Notification-Mod ansehe, stelle ich fest, daß eine Benachrichtigung bei Erstellung eines neuen Themas und bei allen Antworten erfolgt. Das wünsche ich nicht.
Ich möchte halt immer eine Email erhalten. ;-)

[Edit]
Den Code hatte ich auch schon eingebaut gehabt allerdings steht mal das Subject nicht drinne mal ist der Link nicht korrekt etc.
[/Edit]

Verfasst: 14.10.2004 22:13
von Everlong
Hmm....ich wärme das Thema mal wieder auf da ich noch keine "Lösung" gefunden haben, ich rede nicht von hacks wo man zig files, bearbeiten, erstellen etc. muss. Ein einfacher mail() Befehl in der richtigen Datei (posting.php evtl.?) mit Poster, Subject, Body und Link an den Admin bzw. eine Email Adresse. :)

Kann niemand weiterhelfen? Die Suchergebnisse auf dem Forum verweisen auf "Forum Notification" Mod´s etc. aber so "durchdrehen" will ich nicht. ;-)


Danke schonmal für konstruktive Antworten.

Verfasst: 15.10.2004 11:01
von Acid
Du möchtest jedesmal, wenn ein Beitrag geschrieben wird, eine eMail bekommen. Über wieviel Beiträge pro Tagen reden wir hier?

Verfasst: 15.10.2004 12:48
von Everlong
Genau und bei jedem neuen Thema. Es sind im Durchschnitt 10-20 pro Tag.

Verfasst: 15.10.2004 16:13
von Acid
Mal ganz simpel:
posting.php

Code: Alles auswählen

#
#------[ FINDE ]---------------------
#
		case 'poll_delete':
			delete_post($mode, $post_data, $return_message, $return_meta, $forum_id, $topic_id, $post_id, $poll_id);
			break;
	}

#
#------[ DARUNTER EINFÜGEN (unterhalb der Klammer) ]---------------------
#
	if( $submit )
	{
		include($phpbb_root_path .'includes/emailer.'.$phpEx);
		$emailer = new emailer($board_config['smtp_delivery']);
		$script_name = preg_replace('/^\/?(.*?)\/?$/', '\1', trim($board_config['script_path']));
		$u_topic = ( $script_name != '' ) ? $script_name .'/viewtopic.'.$phpEx : 'viewtopic.'.$phpEx;
		$u_profile = ( $script_name != '' ) ? $script_name .'/profile.'.$phpEx : 'profile.'.$phpEx;
		$server_name = trim($board_config['server_name']);
		$server_protocol = ( $board_config['cookie_secure'] ) ? 'https://' : 'http://';
		$server_port = ( $board_config['server_port'] <> 80 ) ? ':'. trim($board_config['server_port']) .'/' : '/';

		$orig_word = array();
		$replacement_word = array();
		obtain_word_list($orig_word, $replacement_word);

		$emailer->from($board_config['board_email']);
		$emailer->replyto($board_config['board_email']);
		$emailer->use_template('admin_topic_notify', $board_config['default_lang']);
		$emailer->email_address('test@test.de');

		$topic_title = ( count($orig_word) ) ? preg_replace($orig_word, $replacement_word, unprepare_message($subject)) : unprepare_message($subject);
		switch( $mode )
		{
			case 'newtopic':	$action = 'Neues Thema'; break;
			case 'reply':	$action = 'Antwort'; break;
			case 'editpost':	$action = 'Beitrag geändert'; break;
			default:		$action = ''; break;
		}

		$emailer->assign_vars(array(
			'EMAIL_SIG' => ( !empty($board_config['board_email_sig']) ) ? str_replace('<br />', "\n", "-- \n". $board_config['board_email_sig']) : '',
			'USER' => $server_protocol . $server_name . $server_port . $u_profile .'?mode=viewprofile&'. POST_USERS_URL ."=". $userdata['user_id'],
			'ACTION' => $action,
			'TOPIC_TITLE' => $topic_title, 
			'U_TOPIC' => $server_protocol . $server_name . $server_port . $u_topic .'?'. POST_POST_URL ."=$post_id#$post_id",
		));
		$emailer->send();
		$emailer->reset();
	}

Code: Alles auswählen

		$emailer->email_address('test@test.de');
Hier deine eMail-Adresse eintragen.
Und dann noch eine admin_topic_notify.tpl mit folgendem Inhalt im Ordner /language/lang_german/email erstellen:

Code: Alles auswählen

Subject: Themenbenachrichtigung - {TOPIC_TITLE}
Charset: iso-8859-1

Thema: {TOPIC_TITLE}
Link: {U_TOPIC}
User: {USER}
Aktion: {ACTION}

{EMAIL_SIG}

Verfasst: 15.10.2004 19:42
von Everlong
Besten Dank, klappt alles bis auf das {TOPIC_TITLE} "leer" ist. ;)

Edit:
Nur beim Antworten ist es leer.

Verfasst: 27.10.2004 09:56
von ah-tonius
Hallo!

Bei mir klappt es überhaupt nicht. Ich bekommen beim Eintrag eine Fehlermeldung:

Code: Alles auswählen

Warning: main(modules/Forums/includes/emailer.php): failed to open stream: No such file or directory in /home/htdocs/web0/html/modules/Forums/posting.php on line 582

Warning: main(): Failed opening 'modules/Forums/includes/emailer.php' for inclusion (include_path='.:') in /home/htdocs/web0/html/modules/Forums/posting.php on line 582

Fatal error: Cannot instantiate non-existent class: emailer in /home/htdocs/web0/html/modules/Forums/posting.php on line 583
Ich darf dabei sagen, daß es sich um phpBB 2.1 unter phpnuke 7.5 handelt.

Sehe gerade, der emailer.php liegt bei mir unter includes/emailer.php

Verfasst: 09.01.2005 11:17
von DreamFlasher
Gibts auch einen Mod der bei allen neuen Posts jedem Benutzer der in ner Liste eingetragen ist ne Mail schickt, insbesondere mit Inhalt+Smileys+Signatur und bbcode?
In die Liste sollte sich jeder selbst eintragen können, für jedes Forum einzeln und die Benachrichtung für neuen Post soll nicht an den Schreiber selbst gehen, ist ziemlich nervig.