Seite 2 von 4

Verfasst: 16.06.2005 23:15
von Mel27
Nein habe ja noch geupdatet auf das 15ner und mit dem Mod welches du geschrieben hast.
nun hab ich das Problem mit dem einloggen und andere User auch!
D.H. das Pw ist immer nur für einmal einloggen aktiviert und dann brauch man ein neues :(

LG Mel

Verfasst: 16.06.2005 23:35
von Markus67
Hi ....

Die Datei protect_user_account_db_update.php hast du ausgeführt?

Dann verlinke mal die ganzen Dateien als txt-Datei
KB:datei

Code: Alles auswählen

##      login.php
##      admin/admin_board.php
##      admin/admin_users.php
##      includes/functions_validate.php
##      includes/page_header.php
##      includes/usercp_activate.php
##      includes/usercp_register.php
##      language/lang_english/lang_admin.php 
##      language/lang_english/lang_main.php 
Irgendwo muss da noch ein Fehler sein.

Markus

Verfasst: 17.06.2005 00:00
von Mel27

Verfasst: 17.06.2005 00:15
von Markus67
Hi ...

suche in der login.php

Code: Alles auswählen

		$url =( !empty($HTTP_POST_VARS['redirect']) ) ? str_replace('&', '&', htmlspecialchars($HTTP_POST_VARS['redirect'])) : "index.$phpEx";
		redirect(append_sid($url, true));
	}
// Start add - Protect user account MOD
if ($session_id['user_id']!=ANONYMOUS)
{
include($phpbb_root_path . "includes/functions_validate.$phpEx");
$pass_result = validate_complex_password ($username, $password);
if ( $session_id['user_passwd_change']==0 || $pass_result['error']== true)
{
	//force a change of password, do not allow a secound login
	$sql = "UPDATE " . USERS_TABLE . " SET user_passwd_change='-9999'
	WHERE user_id = '" . $session_id['user_id'] . "'";
	if ( !($result = $db->sql_query($sql)) )
	{
		message_die(GENERAL_ERROR, 'Error updating correct login data2', '', __LINE__, __FILE__, $sql);
	}
	$url .= ( ereg( "\?" , $url) ) ? '&ch_passwd=1' : '?ch_passwd=1';
} else
if (  intval((time()-$session_id['user_passwd_change']) / 86400) >= $board_config['max_password_age'])
{
	session_end($session_id['session_id'], $session_id['user_id']);
	$message = $lang['Passwd_have_expired'] . '<br /><br /><a href="'.append_sid("profile.$phpEx?mode=sendpassword").'">'.$lang['Send_new_passwd'].'</a><br /><br />' .  sprintf($lang['Click_return_portal'], '<a href="' . append_sid("portal.$phpEx") . '">', '</a>');
	message_die(GENERAL_MESSAGE, $message);
} else
if (  intval((time()-$session_id['user_passwd_change']) / 86400)+(($board_config['max_password_age']<14) ? 1 : 14) >= $board_config['max_password_age'] )
{
	$url .= ( ereg( "\?" , $url) ) ? '&ch_passwd=1' : '?ch_passwd=1';
}
}
// End add - Protect user account MOD
}
else
{
	//
	// Do a full login page dohickey if
ersetze mit:

Code: Alles auswählen

		$url =( !empty($HTTP_POST_VARS['redirect']) ) ? str_replace('&', '&', htmlspecialchars($HTTP_POST_VARS['redirect'])) : "index.$phpEx";

// Start add - Protect user account MOD
if ($session_id['user_id']!=ANONYMOUS)
{
include($phpbb_root_path . "includes/functions_validate.$phpEx");
$pass_result = validate_complex_password ($username, $password);
if ( $session_id['user_passwd_change']==0 || $pass_result['error']== true)
{
	//force a change of password, do not allow a secound login
	$sql = "UPDATE " . USERS_TABLE . " SET user_passwd_change='-9999'
	WHERE user_id = '" . $session_id['user_id'] . "'";
	if ( !($result = $db->sql_query($sql)) )
	{
		message_die(GENERAL_ERROR, 'Error updating correct login data2', '', __LINE__, __FILE__, $sql);
	}
	$url .= ( ereg( "\?" , $url) ) ? '&ch_passwd=1' : '?ch_passwd=1';
} else
if (  intval((time()-$session_id['user_passwd_change']) / 86400) >= $board_config['max_password_age'])
{
	session_end($session_id['session_id'], $session_id['user_id']);
	$message = $lang['Passwd_have_expired'] . '<br /><br /><a href="'.append_sid("profile.$phpEx?mode=sendpassword").'">'.$lang['Send_new_passwd'].'</a><br /><br />' .  sprintf($lang['Click_return_portal'], '<a href="' . append_sid("portal.$phpEx") . '">', '</a>');
	message_die(GENERAL_MESSAGE, $message);
} else
if (  intval((time()-$session_id['user_passwd_change']) / 86400)+(($board_config['max_password_age']<14) ? 1 : 14) >= $board_config['max_password_age'] )
{
	$url .= ( ereg( "\?" , $url) ) ? '&ch_passwd=1' : '?ch_passwd=1';
}
}
// End add - Protect user account MOD

		redirect(append_sid($url, true));
	}

}
else
{
	//
	// Do a full login page dohickey if
Erstelle aber vorher eine Sicherungskopie der login.php. Fehler behoben?

Markus

Verfasst: 17.06.2005 00:24
von Mel27
Ne noch nicht behoben leider :(

LG Mel

Verfasst: 17.06.2005 00:28
von Markus67
Hi ...

öffne die usercp_register.php
suche:

Code: Alles auswählen

user_allow_pm, user_active, user_passwd_change, user_actkey)
ersetze mit:

Code: Alles auswählen

user_allow_pm, user_passwd_change, user_active, user_actkey)
Bitte noch die funcions_validate.php verlinken .. du hast aus versehen die functions.php erwischt :wink:

Markus

Verfasst: 17.06.2005 00:31
von Mel27
http://www.tierschmutz.net/text/functions_validate.txt

auch das hat noch nicht gefunzt.

Lg Mel

Verfasst: 17.06.2005 00:37
von Markus67
Hi ...

der Rest ist meines erachtens in Ordnung. Hast du das was in die englischen Sprachdateien eingefügt werden musst auch in die deutschen Sprachdateien eingefügt?

Die db-Erweiterung hat funktioniert ?

Markus

Verfasst: 17.06.2005 00:38
von Mel27
Hi
Ja habe ich!!
wie meinst du das mit der db erweiterung?
Lg Mel

Verfasst: 17.06.2005 00:44
von Mel27
Hallo,
ich habe gerade gesehen wenn ich auf benutzer einstellungen gehe und mir die einstellung eines Users anzusehen steht da unten ein Feld:
Zwingen Sie Benutzer, Kennwort auf folgendem logon zu ändern
English:
Force user to change password on next logon
Und dann ein haken den ich machen kann bzw der da ist.....
Ich kann den Haken aber nicht rausmachen??!! Liegt es vielleicht daran??
Und wenn ja wie bekomm ich das weg????
LG Mel