Birthday Mod Problem

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
Silencer
Mitglied
Beiträge: 120
Registriert: 24.12.2002 12:19

Birthday Mod Problem

Beitrag von Silencer »

Hallo,

also ich hab folgendes Problem:...
Ich habe den bithdaymod von:
  • ## Mod Title: Birthday PART 1
    ## Mod Version: 1.4.3.
    ## Author: Niels Chr. Denmark < ncr@db9.dk > (Niels Chr. Rød) HTTP://mods.db9.dk
    ##
    ## This mod is for phpBB2!! ver 2.0.4
in ein phpbb 2.0.3 installiert.
Jetzt kommt immer wenn ich mich registrieren will, die Meldung:

Code: Alles auswählen

Could not insert data into users table
Was kann ich dagegen machen??

THX im vorraus
Acid
Ehrenadmin
Beiträge: 12195
Registriert: 26.04.2001 02:00
Wohnort: Berlin

Beitrag von Acid »

..den link:DebugMode aktivieren.

Sicherlich hast Du die DB ned angepasst.. bei dem Hack müsste eine Datei (db_update.php oder ähnlich) dabei gewesen sein, mit der Du das machen kannst.
Silencer
Mitglied
Beiträge: 120
Registriert: 24.12.2002 12:19

Beitrag von Silencer »

des ging jetzt aber schnell :)

Also Debug sagt folgendes:

Code: Alles auswählen

Could not insert data into users table

DEBUG MODE

SQL Error : 1136 Column count doesn't match value count at row 1

INSERT INTO phpbb_users (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_level, user_allow_pm, user_birthday, user_next_birthday_greeting, user_active, user_actkey) VALUES (4, 'Test', 1044451991, '098f6bcd4621d373cade4e832627b4f6', 'xxxx@web.de', '', '', '', '', '', '', '', '', 0, 0, '', '', '', 1, 1, 0, 1, 1, 0, 1, 1, 0, 'D M d, Y g:i a', 'german', 1, 0, 1, 1, '')
Line : 556
File : /data/members/free/tripod/de/d/e/v/xxxxx/htdocs/board/includes/usercp_register.php
db_update habe ich durchgeführt...

jaaa.. ich weiß... wieder einer mit lyos... :oops:
aber ich mach des hier nicht für mich :wink:
Zuletzt geändert von Silencer am 05.02.2003 16:32, insgesamt 1-mal geändert.
Thies
Mitglied
Beiträge: 106
Registriert: 01.07.2002 15:58
Wohnort: Thüringen
Kontaktdaten:

Beitrag von Thies »

Lade bitte mal die Datei includes/usercp_register.php in einen Editor und kopiere die Zeilen um 556 beginnend mit

//
// Get current date
//

hier ins Forum, Du hast das meines Erachtens etwas falsch aus der Modanleitung übernommen. Da scheint m.E. etwas zu fehlen.

Frank-Andre
"credendo vides"
Silencer
Mitglied
Beiträge: 120
Registriert: 24.12.2002 12:19

Beitrag von Silencer »

Hier :

Code: Alles auswählen

	$sql = "INSERT INTO " . USERS_TABLE . "	(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_level, user_allow_pm, user_birthday, user_next_birthday_greeting, user_active, user_actkey)
				VALUES ($user_id, '" . str_replace("\'", "''", $username) . "', " . time() . ", '" . str_replace("\'", "''", $new_password) . "', '" . str_replace("\'", "''", $email) . "', '" . str_replace("\'", "''", $icq) . "', '" . str_replace("\'", "''", $website) . "', '" . str_replace("\'", "''", $occupation) . "', '" . str_replace("\'", "''", $location) . "', '" . str_replace("\'", "''", $interests) . "', '" . str_replace("\'", "''", $signature) . "', '$signature_bbcode_uid', $avatar_sql, $viewemail, '" . str_replace("\'", "''", str_replace(' ', '+', $aim)) . "', '" . str_replace("\'", "''", $yim) . "', '" . str_replace("\'", "''", $msn) . "', $attachsig, $allowsmilies, $allowhtml, $allowbbcode, $allowviewonline, $notifyreply, $notifypm, $popuppm, $user_timezone, '" . str_replace("\'", "''", $user_dateformat) . "', '" . str_replace("\'", "''", $user_lang) . "', $user_style, 0, 1, ";
			if ( $board_config['require_activation'] == USER_ACTIVATION_SELF || $board_config['require_activation'] == USER_ACTIVATION_ADMIN || $coppa )
			{
				$user_actkey = gen_rand_string(true);
				$key_len = 54 - (strlen($server_url));
				$key_len = ( $key_len > 6 ) ? $key_len : 6;
				$user_actkey = substr($user_actkey, 0, $key_len);
				$sql .= "0, '" . str_replace("\'", "''", $user_actkey) . "')";
			}
			else
			{
				$sql .= "1, '')";
			}

			if ( !($result = $db->sql_query($sql, BEGIN_TRANSACTION)) )
			{
				message_die(GENERAL_ERROR, 'Could not insert data into users table', '', __LINE__, __FILE__, $sql);
			}

			$sql = "INSERT INTO " . GROUPS_TABLE . " (group_name, group_description, group_single_user, group_moderator)
				VALUES ('', 'Personal User', 1, 0)";
			if ( !($result = $db->sql_query($sql)) )
			{
				message_die(GENERAL_ERROR, 'Could not insert data into groups table', '', __LINE__, __FILE__, $sql);
			}

			$group_id = $db->sql_nextid();

			$sql = "INSERT INTO " . USER_GROUP_TABLE . " (user_id, group_id, user_pending)
				VALUES ($user_id, $group_id, 0)";
			if( !($result = $db->sql_query($sql, END_TRANSACTION)) )
			{
				message_die(GENERAL_ERROR, 'Could not insert data into user_group table', '', __LINE__, __FILE__, $sql);
			}

			if ( $coppa )
			{
				$message = $lang['COPPA'];
				$email_template = 'coppa_welcome_inactive';
			}
			else if ( $board_config['require_activation'] == USER_ACTIVATION_SELF )
			{
				$message = $lang['Account_inactive'];
				$email_template = 'user_welcome_inactive';
			}
			else if ( $board_config['require_activation'] == USER_ACTIVATION_ADMIN )
			{
				$message = $lang['Account_inactive_admin'];
				$email_template = 'admin_welcome_inactive';
			}
			else
			{
				$message = $lang['Account_added'];
				$email_template = 'user_welcome';
			}

			include($phpbb_root_path . 'includes/emailer.'.$phpEx);
			$emailer = new emailer($board_config['smtp_delivery']);

			$email_headers = "From: " . $board_config['board_email'] . "\nReturn-Path: " . $board_config['board_email'] . "\n";

			$emailer->use_template($email_template, stripslashes($user_lang));
			$emailer->email_address($email);
			$emailer->set_subject();//sprintf($lang['Welcome_subject'], $board_config['sitename'])
			$emailer->extra_headers($email_headers);

			if( $coppa )
			{
				$emailer->assign_vars(array(
					'SITENAME' => $board_config['sitename'],
					'WELCOME_MSG' => sprintf($lang['Welcome_subject'], $board_config['sitename']),
					'USERNAME' => $username,
					'PASSWORD' => $password_confirm,
					'EMAIL_SIG' => str_replace('<br />', "\n", "-- \n" . $board_config['board_email_sig']),

					'FAX_INFO' => $board_config['coppa_fax'],
					'MAIL_INFO' => $board_config['coppa_mail'],
					'EMAIL_ADDRESS' => $email,
					'ICQ' => $icq,
					'AIM' => $aim,
					'YIM' => $yim,
					'MSN' => $msn,
					'WEB_SITE' => $website,
					'FROM' => $location,
					'OCC' => $occupation,
					'INTERESTS' => $interests,
					'SITENAME' => $board_config['sitename']));
			}
			else
			{
				$emailer->assign_vars(array(
					'SITENAME' => $board_config['sitename'],
					'WELCOME_MSG' => sprintf($lang['Welcome_subject'], $board_config['sitename']),
					'USERNAME' => $username,
					'PASSWORD' => $password_confirm,
					'EMAIL_SIG' => str_replace('<br />', "\n", "-- \n" . $board_config['board_email_sig']),

					'U_ACTIVATE' => $server_url . '?mode=activate&' . POST_USERS_URL . '=' . $user_id . '&act_key=' . $user_actkey)
				);
			}

			$emailer->send();
			$emailer->reset();

			if ( $board_config['require_activation'] == USER_ACTIVATION_ADMIN )
			{
				//$emailer->use_template("admin_activate", stripslashes($user_lang));
				$emailer->use_template("admin_activate", $board_config['default_lang']);
				$emailer->email_address($board_config['board_email']);
				$emailer->set_subject(); //$lang['New_account_subject']
				$emailer->extra_headers($email_headers);

				$emailer->assign_vars(array(
					'USERNAME' => $username,
					'EMAIL_SIG' => str_replace('<br />', "\n", "-- \n" . $board_config['board_email_sig']),

					'U_ACTIVATE' => $server_url . '?mode=activate&' . POST_USERS_URL . '=' . $user_id . '&act_key=' . $user_actkey)
				);
				$emailer->send();
				$emailer->reset();
			}

			$message = $message . '<br /><br />' . sprintf($lang['Click_return_index'],  '<a href="' . append_sid("index.$phpEx") . '">', '</a>');

			message_die(GENERAL_MESSAGE, $message);
		} // if mode == register
	}
} // End of submit


if ( $error )
{
	//
	// If an error occured we need to stripslashes on returned data
	//
	$username = stripslashes($username);
	$email = stripslashes($email);
	$new_password = '';
	$password_confirm = '';

	$icq = stripslashes($icq);
	$aim = htmlspecialchars(str_replace('+', ' ', stripslashes($aim)));
	$msn = htmlspecialchars(stripslashes($msn));
	$yim = htmlspecialchars(stripslashes($yim));

	$website = htmlspecialchars(stripslashes($website));
	$location = htmlspecialchars(stripslashes($location));
	$occupation = htmlspecialchars(stripslashes($occupation));
	$interests = htmlspecialchars(stripslashes($interests));
	$signature = stripslashes($signature);
	$signature = ( $signature_bbcode_uid != '' ) ? preg_replace("/:(([a-z0-9]+:)?)$signature_bbcode_uid\]/si", ']', $signature) : $signature;

	$user_lang = stripslashes($user_lang);
	$user_dateformat = stripslashes($user_dateformat);

}
else if ( $mode == 'editprofile' && !isset($HTTP_POST_VARS['avatargallery']) && !isset($HTTP_POST_VARS['submitavatar']) && !isset($HTTP_POST_VARS['cancelavatar']) )
{
	$user_id = $userdata['user_id'];
	$username = htmlspecialchars($userdata['username']);
	$email = $userdata['user_email'];
	$new_password = '';
	$password_confirm = '';

	$icq = $userdata['user_icq'];
	$aim = htmlspecialchars(str_replace('+', ' ', $userdata['user_aim']));
	$msn = htmlspecialchars($userdata['user_msnm']);
	$yim = htmlspecialchars($userdata['user_yim']);

	$website = htmlspecialchars($userdata['user_website']);
	$location = htmlspecialchars($userdata['user_from']);
	$occupation = htmlspecialchars($userdata['user_occ']);
	$interests = htmlspecialchars($userdata['user_interests']);
	if ($userdata['user_birthday']!=999999)
{
	$birthday = realdate($lang['Submit_date_format'],$userdata['user_birthday']); 
	$b_day = realdate('j',$userdata['user_birthday']); 
	$b_md = realdate('n',$userdata['user_birthday']); 
	$b_year = realdate('Y',$userdata['user_birthday']); 
} else
{
Zuletzt geändert von Silencer am 05.02.2003 15:27, insgesamt 1-mal geändert.
Thies
Mitglied
Beiträge: 106
Registriert: 01.07.2002 15:58
Wohnort: Thüringen
Kontaktdaten:

Beitrag von Thies »

Sorry, habe auf Arbeit keine Zeilenanzeige, nimm bitte den Code-Teil wieder raus - ist zu lang -, der den ich brauche beginnt mit:

Code: Alles auswählen

			$sql = "INSERT INTO " . USERS_TABLE . "	(user_id, username, user_regdate, user_password
Frank-Andre
"credendo vides"
Silencer
Mitglied
Beiträge: 120
Registriert: 24.12.2002 12:19

Beitrag von Silencer »

sorry meine schuld... siehe oben! :oops:
Thies
Mitglied
Beiträge: 106
Registriert: 01.07.2002 15:58
Wohnort: Thüringen
Kontaktdaten:

Beitrag von Thies »

Wie ich es gedacht habe, Du hast Dich nicht vollständig an die Anleitung gehalten:

Code: Alles auswählen

# 
#-----[ IN-LINE FIND ]------------------------------------------ 
# 
, user_allow_pm

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

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

# 
#-----[ IN-LINE BEFORE,ADD ]------------------------------------------ 
# 
,'$birthday','$next_birthday_greeting'
Den ersten Teil hast Du eingetragen, den zweiten Teil nicht mehr!

Im Code muss in der Teil

Code: Alles auswählen

$user_style, 0, 1, "; 
ersetzt werden durch:

Code: Alles auswählen

$user_style, 0, 1, '$birthday', '$next_birthday_greeting', "; 
Dann müßte es einwandfrei gehen, es sei denn Du hast noch andere Teile des Mods nicht 1:1 übernommen!

Frank-Andre
"credendo vides"
Silencer
Mitglied
Beiträge: 120
Registriert: 24.12.2002 12:19

Beitrag von Silencer »

oh, ähm ja... wer lesen kann ist klar im vorteil :D
THX sowiet finzt des jetzt.
Aber ich hätt da noch ne Frage!

Code: Alles auswählen

Next birthday popup year:
This field keep track of the next year the user shal have a birthday greeting
hier kann ich nur das Jahr 2004 auswählen... wenn aber einer jetzt 2003 Geburtstag hat, dann kriegt der kein Popup?!
wie stell ich das um? ich kann darin auch nix verändern, bleibt immer 2004 egal was ich eingebe.
Antworten

Zurück zu „phpBB 2.0: Mod Support“