Seite 1 von 2

[E-Mail on Birthday]sql_freeresult 3x -> welches erstzen?

Verfasst: 17.11.2010 18:49
von o0Pascal0o
Hi - ich installiere gerade die MOD: E-Mail on Birthday: http://www.phpbb.com/community/viewtopi ... 25&start=0 & dazu dann das German-Translation-Update: http://area53.die-muellers.org/dm_eds/showcat.php?id=66 Aber da bin ich noch gar nicht. Nur mal so, wer es auch machen will der vollständigkeit halber.

Ich häge bereits beim MOD an sich. Dort steht:
Comments
around line 104
Find
Tip: This may be a partial find and not the whole line.

Code: Alles auswählen

	}
	$db->sql_freeresult($result);
Replace with
Tip: Replace the preceding line(s) to find with the following lines.

Code: Alles auswählen

		if (trim($row['user_email']) && $config['birthday_emails'])
		{
			$bd_list_ary[] = array(
				'method'	=> $row['user_notify_type'],
				'email'		=> $row['user_email'],
				'jabber'	=> $row['user_jabber'],
				'name'		=> $row['username'],
				'lang'		=> $row['user_lang']
			);
		}
	}
	$db->sql_freeresult($result);

	$check_time_bdemail = (int) gmdate('mdY',time() + (3600 * ($config['board_timezone'] + $config['board_dst'])));

	if ( sizeof($bd_list_ary) && ($user->data['user_timezone'] == $config['board_timezone'] && $user->data['user_dst'] == $config['board_dst']) && ($config['birthday_run'] != $check_time_bdemail) && $config['birthday_emails'] )
	{
		set_config('birthday_run', $check_time_bdemail);
		
		include_once($phpbb_root_path . 'includes/functions_messenger.' . $phpEx);
		$messenger = new messenger();

		foreach ($bd_list_ary as $pos => $addr)
		{
			$messenger->template('birthday_email', $addr['lang']);
			
			$messenger->to($addr['email'], $addr['name']);
			$messenger->im($addr['jabber'], $addr['name']);
			// if you want to receive copies of the birthday emails, just uncomment below line 
			//$messenger->cc('your@email.com', 'your_name');
			
			$messenger->assign_vars(array(
				'USERNAME'		=> htmlspecialchars_decode($addr['name'])
			));
			$messenger->send($addr['method']);
			
			$bd_list_log_ary[] = $addr['name']; 
		}
		add_log('admin', 'LOG_BIRTHDAY_EMAIL_SENT', implode(', ', $bd_list_log_ary));				
		unset($bd_list_ary);
		unset($bd_list_log_ary);
		
		$messenger->save_queue();
		unset($messenger);
	}

Ich finde das zu suchende aber 3x in der index.php, wie hier auf den Bilder zu erkennen ist:
http://img72.imageshack.us/img72/5038/3xbirthday.jpg
http://img189.imageshack.us/img189/1164/2xbirthday.jpg

Welches davon muß ich nun ersetzen? Alle 3 doch bestimmt nicht, oder?

Gruß und danke schon mal

Pascal

Re: [E-Mail on Birthday]sql_freeresult 3x -> welches erstzen

Verfasst: 17.11.2010 18:59
von Kirk
Hallo
Es steht doch dort around line 104 also schau mal in der Zeile 104 nach :wink:

Re: [E-Mail on Birthday]sql_freeresult 3x -> welches erstzen

Verfasst: 17.11.2010 19:08
von o0Pascal0o
Das Problem... ich habe ja schon einige Mods.. und somit stimmen die Lines nicht mehr. Ich müsste es an irgendetwas anderem festmachen können.

Re: [E-Mail on Birthday]sql_freeresult 3x -> welches erstzen

Verfasst: 17.11.2010 19:09
von Kirk
Schau dir doch mal die org. Datei an was rund um die Zeile 104 steht

Re: [E-Mail on Birthday]sql_freeresult 3x -> welches erstzen

Verfasst: 17.11.2010 19:15
von o0Pascal0o
Ahjo - super Idee!

Für alle die ebenfalls schon Mods installiert haben, ich habe hier mal mehr Code drumherum - dann sollte man es finden. Also hier, bei diesem in der Nähe halt - das ist der Richtige:

Code: Alles auswählen

        while ($row = $db->sql_fetchrow($result))
        {
                $birthday_list .= (($birthday_list != '') ? ', ' : '') . get_username_string('full', $row['user_id'], $row['username'], $row['user_colour']);

                if ($age = (int) substr($row['user_birthday'], -4))
                {
                        $birthday_list .= ' (' . ($now['year'] - $age) . ')';
                }
        }
        $db->sql_freeresult($result);
}

// Assign index specific vars
$template->assign_vars(array(
Noch eine Sache. Ganz oben steht in der install.xml folgendes:

SQL

Code: Alles auswählen

INSERT INTO phpbb_config (config_name, config_value) VALUES ('birthday_emails', '0');
INSERT INTO phpbb_config (config_name, config_value) VALUES ('birthday_run', '');
In welcher Datei muß ich das denn einfügen?

Re: [E-Mail on Birthday]sql_freeresult 3x -> welches erstzen

Verfasst: 17.11.2010 19:35
von Metzle
Hallo,

SQL-Befehle musst du in der Datenbank ausführen und in keine Datei einsetzen.
Dazu siehe vielleicht mal: KB:pma_faq

Re: [E-Mail on Birthday]sql_freeresult 3x -> welches erstzen

Verfasst: 17.11.2010 20:10
von o0Pascal0o
Ausgerechnet die Bilder fehlen. Habs aber gefunden, und erhalte foglende Fehlermeldung(habe beide Befehle gleichzeitig eingefügt):

MySQL-Database Interface
Fehler

SQL-Befehl:

INSERT INTO phpbb_config( config_name, config_value )
VALUES (
'birthday_emails', '0'
);

MySQL meldet: Dokumentation
#1046 - No database selected


->Diese beiden Befehle habe ich so eingefügt:
INSERT INTO phpbb_config (config_name, config_value) VALUES ('birthday_emails', '0');
INSERT INTO phpbb_config (config_name, config_value) VALUES ('birthday_run', '');



Hab ich mir jetzt damit etwas zerschossen, oder konnte er beide Befehlt nicht ausführen einfach?

Re: [E-Mail on Birthday]sql_freeresult 3x -> welches erstzen

Verfasst: 17.11.2010 20:12
von dagobert50gold
Erst die Datenbank auswählen, dann die SQL-Befehle ...

Re: [E-Mail on Birthday]sql_freeresult 3x -> welches erstzen

Verfasst: 17.11.2010 20:32
von o0Pascal0o
Aber ich habe jetzt nix zerschossen mit der obigen Sache, oder?

Und welche Datenbank muß ich denn wählen?
->hab schon:
hr SQL-Befehl wurde erfolgreich ausgeführt.
INSERT INTO phpbb_config( config_name, config_value )
VALUES (
'birthday_emails', '0'
);# 1 Zeile(n) betroffen.
INSERT INTO phpbb_config( config_name, config_value )
VALUES (
'birthday_run', ''
);# 1 Zeile(n) betroffen.

Komisch, ich habe mich doch auf meine Datenbank eingeloggt, aber mußte dann nochmal die Datenbank wählen.

Re: [E-Mail on Birthday]sql_freeresult 3x -> welches erstzen

Verfasst: 17.11.2010 20:33
von dagobert50gold
Eigentlich nicht ...

EDIT1: Die Datenbank deines Forums natürlich :evil: .
Außerdem bist du wohl der erste User, der nach 24 Tagen 150 Beiträge geschrieben hat. Das sind mehr als 6 Beiträge pro Tag :o .

EDIT2: Es wurde gemacht ...