Birthday MOD

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.
Antworten
tomtom
Mitglied
Beiträge: 2533
Registriert: 21.05.2004 10:00

Birthday MOD

Beitrag von tomtom »

Hallo zusammen,

wollte mittel EasyMOD den Birthay MOD installieren. Nun werden einige der Codestellen in meiner usercd_register.php nicht gefunden.

Da ich von php leider noch immer keine Ahnung habe: kann mir wer sagen, wie ich die install umschreiben muss, dass der EasyMOD die Änderungen macht? ODer was ich machen muss, um die Änderungen dort manuell zu übernehmen? Die restlichen Änderungen werden vom EasyMOD erkannt, nud meine durch zahlreiche MODs veränderte usercp_register.php passt nicht mehr.

Anbei meine usercp_register.php und die Änderungen, die an ihr zu machen sind:

Code: Alles auswählen

#
#-----[ OPEN ]------------------------------------------------
#
includes/usercp_register.php

#
#-----[ FIND ]------------------------------------------------
#
$signature_bbcode_uid = '';

#
#-----[ AFTER, ADD ]------------------------------------------
#

// Start add - Birthday MOD
	if (isset($HTTP_POST_VARS['birthday']) )
	{
		$birthday = intval ($HTTP_POST_VARS['birthday']);
		if ($birthday!=999999)
		{
			$b_day = realdate('j',$birthday);
			$b_md = realdate('n',$birthday);
			$b_year = realdate('Y',$birthday);
		}
	} else
	{
		$b_day = ( isset($HTTP_POST_VARS['b_day']) ) ? intval ($HTTP_POST_VARS['b_day']) : 0;
		$b_md = ( isset($HTTP_POST_VARS['b_md']) ) ? intval ($HTTP_POST_VARS['b_md']) : 0;
		$b_year = ( isset($HTTP_POST_VARS['b_year']) ) ? intval ($HTTP_POST_VARS['b_year']) : 0;
		if ($b_day && $b_md && $b_year)
		{
			$birthday = mkrealdate($b_day,$b_md,$b_year);
		} else
		{
			$birthday = 999999;
		}
	}
// End add - Birthday MOD

#
#-----[ FIND ]------------------------------------------------
#
		$avatar_sql = user_avatar_gallery($mode
	}

#
#-----[ AFTER, ADD ]------------------------------------------
#

// Start add - Birthday MOD
// find the birthday values, reflected by the $lang['Submit_date_format']
	if ($b_day || $b_md || $b_year) //if a birthday is submited, then validate it
	{
		$user_age=(date('md')>=$b_md.(($b_day <= 9) ? '0':'').$b_day) ? date('Y') - $b_year : date('Y') - $b_year - 1 ;
		// Check date, maximum / minimum user age
		if (!checkdate($b_md,$b_day,$b_year))
		{
			$error = TRUE;
			if( isset($error_msg) )$error_msg .= "<br />";
			$error_msg .= $lang['Wrong_birthday_format'];
		} else
		if ($user_age>$board_config['max_user_age'])
		{
			$error = TRUE;
			if( isset($error_msg) )$error_msg .= "<br />";
			$error_msg .= sprintf($lang['Birthday_to_high'],$board_config['max_user_age']);
		} else
		if ($user_age<$board_config['min_user_age'])
		{
			$error = TRUE;
			if( isset($error_msg) )$error_msg .= "<br />";
			$error_msg .= sprintf($lang['Birthday_to_low'],$board_config['min_user_age']);
		} else
		{
			$birthday = ($error) ? $birthday : mkrealdate($b_day,$b_md,$b_year);
			$next_birthday_greeting = (date('md')<$b_md.(($b_day <= 9) ? '0':'').$b_day) ? date('Y'):date('Y')+1 ;
		}
	} else
	{
		if ($board_config['birthday_required'])
		{
			$error = TRUE;
			if( isset($error_msg) )$error_msg .= "<br />";
			$error_msg .= sprintf($lang['Birthday_require']);
		}
		$birthday = 999999;
	}
// End add - Birthday MOD

#
#-----[ FIND ]------------------------------------------------
#
			$sql = "UPDATE " . USERS_TABLE . "
				SET

#
#-----[ IN-LINE FIND ]----------------------------------------
#
str_replace("\'", "''", $interests) . "'

#
#-----[ IN-LINE AFTER, ADD ]----------------------------------
#
, user_birthday = '$birthday', user_next_birthday_greeting = '$next_birthday_greeting'

#
#-----[ FIND ]------------------------------------------------
#
# NOTICE - IMPORTENT SECURITY RISK
#
# If you some how do not preform the following VERY carefully you have the
# potential to compromise your forum SECURITY, your users may easyly get ADMIN access if you make mistake
# meny users do make mistake in the step, so please be very exact, if this fail, then do not run your code on live forum
#
			$sql = "INSERT INTO " . USERS_TABLE . "

#
#-----[ IN-LINE FIND ]----------------------------------------
#
, user_active, user_actkey)

#
#-----[ IN-LINE BEFORE, ADD ]---------------------------------
#
, user_birthday, user_next_birthday_greeting

#
#-----[ FIND ]------------------------------------------------
#
	VALUES ($user_id,

#
#-----[ IN-LINE FIND ]----------------------------------------
#
, ";

#
#-----[ IN-LINE BEFORE, ADD ]---------------------------------
#
, '$birthday', '$next_birthday_greeting'

#
#-----[ FIND ]------------------------------------------------
#
	$interests = $userdata['user_interests'];

#
#-----[ AFTER, ADD ]------------------------------------------
#

// Start add - Birthday MOD
	$birthday = $userdata['user_birthday'];
// End add - Birthday MOD

#
#-----[ FIND ]------------------------------------------------
#
	display_avatar_gallery($mode

#
#-----[ IN-LINE FIND ]----------------------------------------
#
);

#
#-----[ IN-LINE BEFORE, ADD ]---------------------------------
#
, $birthday

#
#-----[ FIND ]------------------------------------------------
#
	if ( $error )
	{
		$template->set_filenames(array(

#
#-----[ BEFORE, ADD ]-----------------------------------------
#

// 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

#
#-----[ FIND ]------------------------------------------------
#
//
// Let's do an overall check for settings/versions which would prevent

#
#-----[ BEFORE, ADD ]-----------------------------------------
#

// Start add - Birthday MOD
	$s_b_day = '<span class="genmed">' . $lang['Day'] . '&nbsp;</span><select name="b_day" size="1" class="gensmall">
		<option value="0">&nbsp;-&nbsp;</option>
		<option value="1">&nbsp;1&nbsp;</option>
		<option value="2">&nbsp;2&nbsp;</option>
		<option value="3">&nbsp;3&nbsp;</option>
		<option value="4">&nbsp;4&nbsp;</option>
		<option value="5">&nbsp;5&nbsp;</option>
		<option value="6">&nbsp;6&nbsp;</option>
		<option value="7">&nbsp;7&nbsp;</option>
		<option value="8">&nbsp;8&nbsp;</option>
		<option value="9">&nbsp;9&nbsp;</option>
		<option value="10">&nbsp;10&nbsp;</option>
		<option value="11">&nbsp;11&nbsp;</option>
		<option value="12">&nbsp;12&nbsp;</option>
		<option value="13">&nbsp;13&nbsp;</option>
		<option value="14">&nbsp;14&nbsp;</option>
		<option value="15">&nbsp;15&nbsp;</option>
		<option value="16">&nbsp;16&nbsp;</option>
		<option value="17">&nbsp;17&nbsp;</option>
		<option value="18">&nbsp;18&nbsp;</option>
		<option value="19">&nbsp;19&nbsp;</option>
		<option value="20">&nbsp;20&nbsp;</option>
		<option value="21">&nbsp;21&nbsp;</option>
		<option value="22">&nbsp;22&nbsp;</option>
		<option value="23">&nbsp;23&nbsp;</option>
		<option value="24">&nbsp;24&nbsp;</option>
		<option value="25">&nbsp;25&nbsp;</option>
		<option value="26">&nbsp;26&nbsp;</option>
		<option value="27">&nbsp;27&nbsp;</option>
		<option value="28">&nbsp;28&nbsp;</option>
		<option value="29">&nbsp;29&nbsp;</option>
		<option value="30">&nbsp;30&nbsp;</option>
		<option value="31">&nbsp;31&nbsp;</option>
	  	</select>&nbsp;&nbsp;';
	$s_b_md = '<span class="genmed">' . $lang['Month'] . '&nbsp;</span><select name="b_md" size="1" class="gensmall">
     		<option value="0">&nbsp;-&nbsp;</option>
		<option value="1">&nbsp;'.$lang['datetime']['January'].'&nbsp;</option>
		<option value="2">&nbsp;'.$lang['datetime']['February'].'&nbsp;</option>
		<option value="3">&nbsp;'.$lang['datetime']['March'].'&nbsp;</option>
		<option value="4">&nbsp;'.$lang['datetime']['April'].'&nbsp;</option>
		<option value="5">&nbsp;'.$lang['datetime']['May'].'&nbsp;</option>
		<option value="6">&nbsp;'.$lang['datetime']['June'].'&nbsp;</option>
		<option value="7">&nbsp;'.$lang['datetime']['July'].'&nbsp;</option>
		<option value="8">&nbsp;'.$lang['datetime']['August'].'&nbsp;</option>
		<option value="9">&nbsp;'.$lang['datetime']['September'].'&nbsp;</option>
		<option value="10">&nbsp;'.$lang['datetime']['October'].'&nbsp;</option>
		<option value="11">&nbsp;'.$lang['datetime']['November'].'&nbsp;</option>
		<option value="12">&nbsp;'.$lang['datetime']['December'].'&nbsp;</option>
		</select>&nbsp;&nbsp;';
	$s_b_day= str_replace("value=\"".$b_day."\">", "value=\"".$b_day."\" SELECTED>" ,$s_b_day);
	$s_b_md = str_replace("value=\"".$b_md."\">", "value=\"".$b_md."\" SELECTED>" ,$s_b_md);
	$s_b_year = '<span class="genmed">' . $lang['Year'] . '&nbsp;</span><input type="text" class="post" style="width: 50px" name="b_year" size="4" maxlength="4" value="' . $b_year . '" />&nbsp;&nbsp;';
	$i = 0;
	$s_birthday = '';
	for ($i=0; $i<=strlen($lang['Submit_date_format']); $i++)
	{
		switch ($lang['Submit_date_format'][$i])
		{
			case d:  $s_birthday .= $s_b_day;break;
			case m:  $s_birthday .= $s_b_md;break;
			case Y:  $s_birthday .= $s_b_year;break;
		}
	}
// End add - Birthday MOD
Gruß, Tom
Benutzeravatar
Tommy_65428
Mitglied
Beiträge: 459
Registriert: 02.12.2004 18:49
Wohnort: Hamburg

Beitrag von Tommy_65428 »

Code: Alles auswählen

# 
#-----[ OPEN ]------------------------------------------------ 
# 
includes/usercp_register.php 

# 
#-----[ FIND ]------------------------------------------------ 
# 
$gender = ( isset($HTTP_POST_VARS['gender']) ) ? intval ($HTTP_POST_VARS['gender']) : 0;
// End add - Gender MOD

# 
#-----[ AFTER, ADD ]------------------------------------------ 
# 

// Start add - Birthday MOD 
   if (isset($HTTP_POST_VARS['birthday']) ) 
   { 
      $birthday = intval ($HTTP_POST_VARS['birthday']); 
      if ($birthday!=999999) 
      { 
         $b_day = realdate('j',$birthday); 
         $b_md = realdate('n',$birthday); 
         $b_year = realdate('Y',$birthday); 
      } 
   } else 
   { 
      $b_day = ( isset($HTTP_POST_VARS['b_day']) ) ? intval ($HTTP_POST_VARS['b_day']) : 0; 
      $b_md = ( isset($HTTP_POST_VARS['b_md']) ) ? intval ($HTTP_POST_VARS['b_md']) : 0; 
      $b_year = ( isset($HTTP_POST_VARS['b_year']) ) ? intval ($HTTP_POST_VARS['b_year']) : 0; 
      if ($b_day && $b_md && $b_year) 
      { 
         $birthday = mkrealdate($b_day,$b_md,$b_year); 
      } else 
      { 
         $birthday = 999999; 
      } 
   } 
// End add - Birthday MOD 

# 
#-----[ FIND ]------------------------------------------------ 
# 
		$avatar_sql = user_avatar_gallery($mode, $error, $error_msg, $user_avatar_local, $user_avatar_category);
	}

# 
#-----[ AFTER, ADD ]------------------------------------------ 
# 

// Start add - Birthday MOD 
// find the birthday values, reflected by the $lang['Submit_date_format'] 
   if ($b_day || $b_md || $b_year) //if a birthday is submited, then validate it 
   { 
      $user_age=(date('md')>=$b_md.(($b_day <= 9) ? '0':'').$b_day) ? date('Y') - $b_year : date('Y') - $b_year - 1 ; 
      // Check date, maximum / minimum user age 
      if (!checkdate($b_md,$b_day,$b_year)) 
      { 
         $error = TRUE; 
         if( isset($error_msg) )$error_msg .= "<br />"; 
         $error_msg .= $lang['Wrong_birthday_format']; 
      } else 
      if ($user_age>$board_config['max_user_age']) 
      { 
         $error = TRUE; 
         if( isset($error_msg) )$error_msg .= "<br />"; 
         $error_msg .= sprintf($lang['Birthday_to_high'],$board_config['max_user_age']); 
      } else 
      if ($user_age<$board_config['min_user_age']) 
      { 
         $error = TRUE; 
         if( isset($error_msg) )$error_msg .= "<br />"; 
         $error_msg .= sprintf($lang['Birthday_to_low'],$board_config['min_user_age']); 
      } else 
      { 
         $birthday = ($error) ? $birthday : mkrealdate($b_day,$b_md,$b_year); 
         $next_birthday_greeting = (date('md')<$b_md.(($b_day <= 9) ? '0':'').$b_day) ? date('Y'):date('Y')+1 ; 
      } 
   } else 
   { 
      if ($board_config['birthday_required']) 
      { 
         $error = TRUE; 
         if( isset($error_msg) )$error_msg .= "<br />"; 
         $error_msg .= sprintf($lang['Birthday_require']); 
      } 
      $birthday = 999999; 
   } 
// End add - Birthday MOD 

# 
#-----[ FIND ]------------------------------------------------ 
# 
         $sql = "UPDATE " . USERS_TABLE . " 
            SET 

# 
#-----[ IN-LINE FIND ]---------------------------------------- 
# 
str_replace("\'", "''", $interests) . "' 

# 
#-----[ IN-LINE AFTER, ADD ]---------------------------------- 
# 
, user_birthday = '$birthday', user_next_birthday_greeting = '$next_birthday_greeting' 

# 
#-----[ FIND ]------------------------------------------------ 
# 
# NOTICE - IMPORTENT SECURITY RISK 
# 
# If you some how do not preform the following VERY carefully you have the 
# potential to compromise your forum SECURITY, your users may easyly get ADMIN access if you make mistake 
# meny users do make mistake in the step, so please be very exact, if this fail, then do not run your code on live forum 
# 
         $sql = "INSERT INTO " . USERS_TABLE . " 

# 
#-----[ IN-LINE FIND ]---------------------------------------- 
# 
, user_active, user_actkey) 

# 
#-----[ IN-LINE BEFORE, ADD ]--------------------------------- 
# 
, user_birthday, user_next_birthday_greeting 

# 
#-----[ FIND ]------------------------------------------------ 
# 
   VALUES ($user_id, 

# 
#-----[ IN-LINE FIND ]---------------------------------------- 
# 
, "; 

# 
#-----[ IN-LINE BEFORE, ADD ]--------------------------------- 
# 
, '$birthday', '$next_birthday_greeting' 

# 
#-----[ FIND ]------------------------------------------------ 
# 
   $interests = $userdata['user_interests']; 

# 
#-----[ AFTER, ADD ]------------------------------------------ 
# 

// Start add - Birthday MOD 
   $birthday = $userdata['user_birthday']; 
// End add - Birthday MOD 

# 
#-----[ FIND ]------------------------------------------------ 
# 
   display_avatar_gallery($mode 

# 
#-----[ IN-LINE FIND ]---------------------------------------- 
# 
); 

# 
#-----[ IN-LINE BEFORE, ADD ]--------------------------------- 
# 
, $birthday 

# 
#-----[ FIND ]------------------------------------------------ 
# 
   if ( $error ) 
   { 
      $template->set_filenames(array( 

# 
#-----[ BEFORE, ADD ]----------------------------------------- 
# 

// 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 

# 
#-----[ FIND ]------------------------------------------------ 
# 
// 
// Let's do an overall check for settings/versions which would prevent 

# 
#-----[ BEFORE, ADD ]----------------------------------------- 
# 

// Start add - Birthday MOD 
   $s_b_day = '<span class="genmed">' . $lang['Day'] . '&nbsp;</span><select name="b_day" size="1" class="gensmall"> 
      <option value="0">&nbsp;-&nbsp;</option> 
      <option value="1">&nbsp;1&nbsp;</option> 
      <option value="2">&nbsp;2&nbsp;</option> 
      <option value="3">&nbsp;3&nbsp;</option> 
      <option value="4">&nbsp;4&nbsp;</option> 
      <option value="5">&nbsp;5&nbsp;</option> 
      <option value="6">&nbsp;6&nbsp;</option> 
      <option value="7">&nbsp;7&nbsp;</option> 
      <option value="8">&nbsp;8&nbsp;</option> 
      <option value="9">&nbsp;9&nbsp;</option> 
      <option value="10">&nbsp;10&nbsp;</option> 
      <option value="11">&nbsp;11&nbsp;</option> 
      <option value="12">&nbsp;12&nbsp;</option> 
      <option value="13">&nbsp;13&nbsp;</option> 
      <option value="14">&nbsp;14&nbsp;</option> 
      <option value="15">&nbsp;15&nbsp;</option> 
      <option value="16">&nbsp;16&nbsp;</option> 
      <option value="17">&nbsp;17&nbsp;</option> 
      <option value="18">&nbsp;18&nbsp;</option> 
      <option value="19">&nbsp;19&nbsp;</option> 
      <option value="20">&nbsp;20&nbsp;</option> 
      <option value="21">&nbsp;21&nbsp;</option> 
      <option value="22">&nbsp;22&nbsp;</option> 
      <option value="23">&nbsp;23&nbsp;</option> 
      <option value="24">&nbsp;24&nbsp;</option> 
      <option value="25">&nbsp;25&nbsp;</option> 
      <option value="26">&nbsp;26&nbsp;</option> 
      <option value="27">&nbsp;27&nbsp;</option> 
      <option value="28">&nbsp;28&nbsp;</option> 
      <option value="29">&nbsp;29&nbsp;</option> 
      <option value="30">&nbsp;30&nbsp;</option> 
      <option value="31">&nbsp;31&nbsp;</option> 
        </select>&nbsp;&nbsp;'; 
   $s_b_md = '<span class="genmed">' . $lang['Month'] . '&nbsp;</span><select name="b_md" size="1" class="gensmall"> 
           <option value="0">&nbsp;-&nbsp;</option> 
      <option value="1">&nbsp;'.$lang['datetime']['January'].'&nbsp;</option> 
      <option value="2">&nbsp;'.$lang['datetime']['February'].'&nbsp;</option> 
      <option value="3">&nbsp;'.$lang['datetime']['March'].'&nbsp;</option> 
      <option value="4">&nbsp;'.$lang['datetime']['April'].'&nbsp;</option> 
      <option value="5">&nbsp;'.$lang['datetime']['May'].'&nbsp;</option> 
      <option value="6">&nbsp;'.$lang['datetime']['June'].'&nbsp;</option> 
      <option value="7">&nbsp;'.$lang['datetime']['July'].'&nbsp;</option> 
      <option value="8">&nbsp;'.$lang['datetime']['August'].'&nbsp;</option> 
      <option value="9">&nbsp;'.$lang['datetime']['September'].'&nbsp;</option> 
      <option value="10">&nbsp;'.$lang['datetime']['October'].'&nbsp;</option> 
      <option value="11">&nbsp;'.$lang['datetime']['November'].'&nbsp;</option> 
      <option value="12">&nbsp;'.$lang['datetime']['December'].'&nbsp;</option> 
      </select>&nbsp;&nbsp;'; 
   $s_b_day= str_replace("value=\"".$b_day."\">", "value=\"".$b_day."\" SELECTED>" ,$s_b_day); 
   $s_b_md = str_replace("value=\"".$b_md."\">", "value=\"".$b_md."\" SELECTED>" ,$s_b_md); 
   $s_b_year = '<span class="genmed">' . $lang['Year'] . '&nbsp;</span><input type="text" class="post" style="width: 50px" name="b_year" size="4" maxlength="4" value="' . $b_year . '" />&nbsp;&nbsp;'; 
   $i = 0; 
   $s_birthday = ''; 
   for ($i=0; $i<=strlen($lang['Submit_date_format']); $i++) 
   { 
      switch ($lang['Submit_date_format'][$i]) 
      { 
         case d:  $s_birthday .= $s_b_day;break; 
         case m:  $s_birthday .= $s_b_md;break; 
         case Y:  $s_birthday .= $s_b_year;break; 
      } 
   } 
// End add - Birthday MOD 
Sollte klappen *hoff*
tomtom
Mitglied
Beiträge: 2533
Registriert: 21.05.2004 10:00

Beitrag von tomtom »

Nun erhalte ich:
Could not insert data into users table

DEBUG MODE

SQL Error : 1136 Anzahl der Spalten stimmt nicht mit der Anzahl der Werte in Zeile 1 überein

INSERT INTO 524_users (user_reg_ip, user_reg_host, user_id, username, user_regdate, user_password, user_email, user_icq, user_website, user_occ, user_from, user_interests, user_sig, user_sig_bbcode_uid, user_avatar, user_avatar_type, user_viewemail, user_aim, user_yim, user_msnm, user_attachsig, user_allowsmile, user_allowhtml, user_allowbbcode, user_allow_viewonline, user_notify, user_notify_pm, user_popup_pm, user_timezone, user_dateformat, user_lang, user_style, user_gender, user_level, user_allow_pm, user_birthday, user_next_birthday_greeting, user_active, user_actkey) VALUES ('82.207.221.220', 'muedsl-82-207-221-220.citykom.de', 1008, 'testuser', 1147022604, 'dbf2641b360d20ed942a79b59d0cd5bd', 'spam@thomas-hoelscher.de', '', '', 'dd', '', '', '', '', '', 0, 1, '', '', '', 1, 1, 0, 1, 1, 0, 1, 1, 1, 'd.m.Y, H:i', 'german', 1, '1', 0, 1, 0, '9f0e70a4bc6')

Line : 906
File : usercp_register.php
Meine usercp_register
Gruß, Tom
Antworten

Zurück zu „phpBB 2.0: Mod Support“