Seite 1 von 9

Fehler bei Geburtstags-Mod

Verfasst: 03.11.2003 12:09
von chris3007
Hallo zusammen,

habe in meinem Geburtstagsmod folgenden Fehler:

Im Monat 11 zeigt der Mod auch die Geburstage des Monats 01, also von Januar an.

Weiß da jemand bescheid, wo ich da ansetzen muss ?

Vielen Dank für Eure Hilfe.

Gruß
Chris

Verfasst: 03.11.2003 12:49
von Warren
1. welchen geb mod hast du installiert
2. wo zeigt es das an?

Verfasst: 03.11.2003 13:46
von Leuchte
suchen hilft, lösung steht hier
http://www.phpbb.de/viewtopic.php?t=39452

Verfasst: 03.11.2003 13:46
von Gast
Hallo,

ich habe die Version 1.4.15.

In der index.tmpl wird im Monat 11 auch der Monat 01, also der Januar angezeigt. Derzeit also der 3.-10.11.2003 als auch der 3.10.Januar 2003.

Gruß
Chris

Verfasst: 03.11.2003 14:03
von AWSW
Hallo,
genau das hat mir gerade auch ein User in einem meiner Foren fest gestellt... Der User ist heute schon in der Liste der naechsten 5 Tage, obwohl er erst am 7.1.04 Geburtstag hat... Scheint mir ein kleiner Bug des Birthday MODs zu sein :roll:

Verfasst: 03.11.2003 14:04
von chris3007

Code: Alles auswählen

	// Birthday Mod, Show users with birthday 
$sql = ($board_config['birthday_check_day']) ? "SELECT user_id, username, user_birthday,user_level FROM " . USERS_TABLE. " WHERE user_birthday!=999999 ORDER BY username" :"";
if($result = $db->sql_query($sql)) 
{ 
	if (!empty($result)) 
	{ 
		$time_now = time();
		$this_year = create_date('Y', $time_now, $board_config['board_timezone']);
		$date_today = create_date('Ymd', $time_now, $board_config['board_timezone']);
		$date_forward = create_date('Ymd', $time_now+($board_config['birthday_check_day']*86400), $board_config['board_timezone']);
	      while ($birthdayrow = $db->sql_fetchrow($result))
		{ 
		      $user_birthday2 = $this_year.($user_birthday = realdate("md",$birthdayrow['user_birthday'] )); 
      		if ( $user_birthday2 < $date_today ) $user_birthday2 += 1000;
			if ( $user_birthday2 > $date_today  && $user_birthday2 <= $date_forward ) 
			{ 
				// user are having birthday within the next days
				$user_age = ( $this_year.$user_birthday < $date_today ) ? $this_year - realdate ('Y',$birthdayrow['user_birthday'])+1 : $this_year- realdate ('Y',$birthdayrow['user_birthday']); 
				switch ($birthdayrow['user_level'])
				{
					case ADMIN :
		      			$birthdayrow['username'] = '<b>' . $birthdayrow['username'] . '</b>'; 
      					$style_color = 'style="color:#' . $theme['fontcolor3'] . '"';						break;
					case MOD :
		      			$birthdayrow['username'] = '<b>' . $birthdayrow['username'] . '</b>'; 
      					$style_color = 'style="color:#' . $theme['fontcolor2'] . '"';						break;
					default: $style_color = '';
				}
				$birthday_week_list .= ' <a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $birthdayrow['user_id']) . '"' . $style_color .'>' . $birthdayrow['username'] . ' ('.$user_age.')</a>,'; 
			} else if ( $user_birthday2 == $date_today ) 
      		{ 
				//user have birthday today 
				$user_age = $this_year - realdate ( 'Y',$birthdayrow['user_birthday'] ); 
				switch ($birthdayrow['user_level'])
				{
					case ADMIN :
		      			$birthdayrow['username'] = '<b>' . $birthdayrow['username'] . '</b>'; 
      					$style_color = 'style="color:#' . $theme['fontcolor3'] . '"';						break;
					case MOD :
			      		$birthdayrow['username'] = '<b>' . $birthdayrow['username'] . '</b>'; 
      					$style_color = 'style="color:#' . $theme['fontcolor2'] . '"';						break;
					default: $style_color = '';
				}
				$birthday_today_list .= ' <a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $birthdayrow['user_id']) . '"' . $style_color .'>' . $birthdayrow['username'] . ' ('.$user_age.')</a>,'; 
		      }
		}
		if ($birthday_today_list) $birthday_today_list[ strlen( $birthday_today_list)-1] = ' ';
		if ($birthday_week_list) $birthday_week_list[ strlen( $birthday_week_list)-1] = ' ';
	} 
	$db->sql_freeresult($result);
}
Das ist der Code, der in meiner Index.php steht
Und trotzdem wird im Monat 11 auch der Monat 1 angezeigt. Weiß jemand Rat ?

Gruß
Chris

Verfasst: 03.11.2003 14:14
von AWSW
Hallo,
habe mal beim Autor selbst nachgefragt: http://mods.db9.dk/viewtopic.php?t=3355

Es scheint so, dass manche User den Fehler im Index und manche im Portal haben...

Verfasst: 03.11.2003 15:15
von Leuchte
oh Axel, was sagen wir immer; die suche benutzen ;)
http://mods.db9.dk/viewtopic.php?t=3096 hier wurde das auch schon behandelt und auf seite 2 ist auch die lösung, bzw. in dem beitrag, den ich bei meinem ersten posting verlinkt habe ;)

Verfasst: 03.11.2003 16:13
von AWSW
Hi,
hab ich wohl überlesen :oops:

Komisch nur, dass es Monate lang immer gepasst hat...

Scheint mir ein Bug in der Birthday Mod Version 1.4.15 zu sein, denn für das Portal hatte ich diesen Code aus der Anleitung verwendet... :roll:

Ich werde den Download korrigieren :wink:

Verfasst: 03.11.2003 19:08
von volkerblume
Hallo alle susammen ,ich bekomme die:

ALTER TABLE users ADD user_birthday INT DEFAULT '999999' not null
ALTER TABLE users ADD user_next_birthday_greeting INT DEFAULT '0' not null
INSERT INTO CONFIG (config_name, config_value) VALUES ("birthday_required", "0")
INSERT INTO config (config_name, config_value) VALUES ('birthday_greeting', '1')
INSERT INTO config (config_name, config_value) VALUES ('max_user_age', '100')
INSERT INTO config (config_name, config_value) VALUES ('min_user_age', '5')
INSERT INTO config (config_name, config_value) VALUES ('birthday_check_day', '7')

absolute nicht in die datenbank auch nicht mit dem updater dann kommt immer
This list is a result of the SQL queries needed for the additional mods in the pre-moded pack


Birthday PART 1 Mod
[Already added] line: 1 , ALTER TABLE phpbb_users ADD user_birthday INT DEFAULT "999999" not null
[Already added] line: 2 , ALTER TABLE phpbb_users ADD user_next_birthday_greeting INT DEFAULT "0" not null


Birthday PART 2 Mod
[Already added] line: 3 , INSERT INTO phpbb_config (config_name, config_value) VALUES ("birthday_required", "0")
[Already added] line: 4 , INSERT INTO phpbb_config (config_name, config_value) VALUES ("birthday_greeting", "1")
[Already added] line: 5 , INSERT INTO phpbb_config (config_name, config_value) VALUES ("max_user_age", "100")
[Already added] line: 6 , INSERT INTO phpbb_config (config_name, config_value) VALUES ("min_user_age", "5")
[Already added] line: 7 , INSERT INTO phpbb_config (config_name, config_value) VALUES ("birthday_check_day", "7")
[Already added] ist rot