Pagina 1 van 2
Vraag over birthday MOD
Geplaatst: 10 jan 2006, 20:47
door Impactforra
Ik heb de Birthday mod geinstaleerd en als ik mijn geboorte datum dan invul bij het profiel
En dan staat het ook gewoon bij de statistieken dat ik jarig ben.
Daarna als ik mijn profiel wil nog een keer wil bewerken bijvoorbeeld voor m'n handtekening dan is het weg
Hoe kan dit en hoe kan ik dit fixen?
De mod is helemaal goed gedaan
Geplaatst: 10 jan 2006, 20:48
door Paul
Sla de bestanden even op als jpg oid, kan ze niet openen

Geplaatst: 10 jan 2006, 21:12
door Impactforra
paulus schreef:Sla de bestanden even op als jpg oid, kan ze niet openen

Gedaan, zie 1e post

Geplaatst: 10 jan 2006, 21:18
door Paul
usercp_register.php wel goed aangepast?
Geplaatst: 30 jan 2006, 13:49
door brandsrus
Ik heb samen met de TS ff naar de bestanden gekeken, mis alleen de volgende code in het bestand viewtopic.php maar dat heeft vast niet met die onthoud dinges te maken waar TS problemen mee heeft of wel?
Gaat om dit stukje:
Code: Selecteer alles
#
#-----[ FIND ]------------------------------------------------
#
$sql = "SELECT u.username,
#
#-----[ IN-LINE FIND ]----------------------------------------
#
, u.user_allowsmile
#
#-----[ IN-LINE AFTER, ADD ]----------------------------------
#
, u.user_birthday, u.user_next_birthday_greeting
EDIT: het moet zich volgens mijn administratie rond ongeveer regel 400 bevinden.
Geplaatst: 30 jan 2006, 14:06
door brandsrus
Sorry moderators maar het probleem is solved samen met de TS.
Hierbij de oplossing
in usercp_register.php staat het volgende rond een regeltje of 1150 het volgende.
Code: Selecteer alles
// End add - Gender MOD
if ( $error )
{
// Start add - Birthday MOD
if ( $birthday!=999999 )
{
$b_day = realdate('j', $birthday);
$b_md = realdate('n', $birthday);
$b_year = realdate('Y', $birthday);
$birthday = realdate($lang['Submit_date_format'], $birthday);
} else
{
$b_day = '';
$b_md = '';
$b_year = '';
$birthday = '';
}
// End add - Birthday MOD
$template->set_filenames(array(
'reg_header' => 'error_body.tpl')
);
Maar in de birthday mod staat dat het stukje voor de if regel moet dus zo.
Code: Selecteer alles
// End add - Gender MOD
// Start add - Birthday MOD
if ( $birthday!=999999 )
{
$b_day = realdate('j', $birthday);
$b_md = realdate('n', $birthday);
$b_year = realdate('Y', $birthday);
$birthday = realdate($lang['Submit_date_format'], $birthday);
} else
{
$b_day = '';
$b_md = '';
$b_year = '';
$birthday = '';
}
// End add - Birthday MOD
if ( $error )
{
$template->set_filenames(array(
'reg_header' => 'error_body.tpl')
);
En nu onthoud hij wel je geboortedatum in het profiel van het forum.
Ik denk moet de oplossing toch even melden met de nieuwe functie kun je hem dan goed vinden

Geplaatst: 31 jan 2006, 20:11
door Pieter_1983
Nu heb ik een probleem met de birthday mod (1.5.8) (van
http://mods.db9.dk)
Ik alles gedaan (ja ook de sql update in phpmyadmin) maar ik krijg nu de volgende error :
Parse error: parse error, unexpected '/', expecting ')' in /*****/forum/index.php on line 340
weet iemand hoe dit kan komen ?
Bedankt, groetjes Pieter
Geplaatst: 31 jan 2006, 20:15
door YoKev
brandsrus schreef:Sorry moderators maar het probleem is solved samen met de TS.
Hierbij de oplossing
in usercp_register.php staat het volgende rond een regeltje of 1150 het volgende.
Code: Selecteer alles
// End add - Gender MOD
if ( $error )
{
// Start add - Birthday MOD
if ( $birthday!=999999 )
{
$b_day = realdate('j', $birthday);
$b_md = realdate('n', $birthday);
$b_year = realdate('Y', $birthday);
$birthday = realdate($lang['Submit_date_format'], $birthday);
} else
{
$b_day = '';
$b_md = '';
$b_year = '';
$birthday = '';
}
// End add - Birthday MOD
$template->set_filenames(array(
'reg_header' => 'error_body.tpl')
);
Maar in de birthday mod staat dat het stukje voor de if regel moet dus zo.
Code: Selecteer alles
// End add - Gender MOD
// Start add - Birthday MOD
if ( $birthday!=999999 )
{
$b_day = realdate('j', $birthday);
$b_md = realdate('n', $birthday);
$b_year = realdate('Y', $birthday);
$birthday = realdate($lang['Submit_date_format'], $birthday);
} else
{
$b_day = '';
$b_md = '';
$b_year = '';
$birthday = '';
}
// End add - Birthday MOD
if ( $error )
{
$template->set_filenames(array(
'reg_header' => 'error_body.tpl')
);
En nu onthoud hij wel je geboortedatum in het profiel van het forum.
Ik denk moet de oplossing toch even melden met de nieuwe functie kun je hem dan goed vinden

En wie is TS dan?

Geplaatst: 31 jan 2006, 20:25
door Paul
topic starter?
Geplaatst: 31 jan 2006, 20:33
door Pieter_1983
de fout die ik net poste moet rond de dikgedrukte tekst zitten in deze tekstfile
http://www.theohuiberts.nl/Birthday_mod.txt
Hopelijk kunnen jullie mij hiermee helpen want ik kan nu niks met me forum (ja kan de mod weer helemaal verwijderen maar dat is zonde van het werk tot nu toe, wil er liever achter komen hoe het wel moet :p )
Geplaatst: 31 jan 2006, 20:34
door Impactforra
Topic Starter

Dus paulus heeft gelijk

Geplaatst: 31 jan 2006, 20:49
door Bee
Hoi Pieter_1983,
Uw link werkt niet.
Geplaatst: 31 jan 2006, 20:50
door Pieter_1983
Code: Selecteer alles
// 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 += 10000;
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);
}
Geplaatst: 01 feb 2006, 11:21
door Nymphy
vervang dat stukje eens met :
Code: Selecteer alles
// 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 += 10000;
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);
}
dit is de code die bij mij in index.php staat, en bij mij werkt de birthday mod perfect

Geplaatst: 01 feb 2006, 11:31
door Pieter_1983
Dankje nymphie,
het werkt nu

Geplaatst: 01 feb 2006, 11:33
door Nymphy
Graag gedaan

Geplaatst: 01 feb 2006, 20:28
door Pieter_1983
Op mijn testforum werkt ie,
dus nu ging ik hem op mijn hoofdforum zetten maar krijg ik het volgende :
Ik krijg het niet in beeld op mijn indexpagina.
Bij mijn admin. staat er dit bij configuratie :
Maximum leeftijd van de gebruikers
Minimum leeftijd van de gebruikers
Aantal dagen op voorhand waarschuwen
Het aantal dagen dat een script vooruit kijkt of een lid jarig gaat zijn.
deze blijven leeg.
En bij het toevoegen van de sql dingen in phpmydamin krijg ik dit :
Fout
SQL-query:
ALTER TABLE phpbb_users ADD user_birthday INT DEFAULT '999999' NOT NULL
MySQL retourneerde:
#1060 - Duplicate column name 'user_birthday'
[ Terug ]
Hoe krijg ik dit goed?
Hopelijk kan je mij helpen. alvast bedankt
Geplaatst: 01 feb 2006, 20:37
door Paul
Dan staat hij al in de database

Geplaatst: 01 feb 2006, 20:47
door Pieter_1983
maar ja, een van de regels die ik in moet voeren volgens mij nog niet anders moest hij bij de admin de juiste getallen opgeven :
Code: Selecteer alles
ALTER TABLE phpbb_users ADD user_birthday INT DEFAULT '999999' not null;
ALTER TABLE phpbb_users ADD user_next_birthday_greeting INT DEFAULT '0' not null;
INSERT INTO phpbb_config (config_name, config_value) VALUES ('birthday_required', '0');
INSERT INTO phpbb_config (config_name, config_value) VALUES ('birthday_greeting', '1');
INSERT INTO phpbb_config (config_name, config_value) VALUES ('max_user_age', '100');
INSERT INTO phpbb_config (config_name, config_value) VALUES ('min_user_age', '5');
INSERT INTO phpbb_config (config_name, config_value) VALUES ('birthday_check_day', '7');
Geplaatst: 01 feb 2006, 20:50
door Paul
Probeer ze allemaal een voor een
