- Wat is het probleem? 0.19 > 0.20 --> Niet alles verwerkt bij handmatige update. Ik kon in het bestand "includes/sessions.php" de betreffende informatie niet vinden, ook niet na intensief zoeken. Ik heb ook in dit bestand niet eens zoveel regels, zie hieronder voor meer info. Heb hetzelfde met het bestand "language/lang_english/lang_admin.php", hier moet ik bij de update wat regels toevoegen, maar ook dit is nergens binnen de file te vinden.
Wanneer ontstond het probleem? Tijdens
Adres van je forum: http://forum.veelzijdigmaleisie.nl
Geïnstalleerde mods: quickreply
Huidige template: FreeMind 1.1
phpBB versie: 2.0.20
Waar is je forum gehost: Lycos
Heb je onlangs iets verandert aan je forum? Update 0.19 > 0.20
Heb je gezocht naar een antwoord? Ja? met welke zoekwoorden?
Overige opmerkingen:
# Hieronder de code die ik moest bewerken in het bestand "includes/sessions.php".
Code: Selecteer alles
#-----[ OPEN ]---------------------------------------------
#
includes/sessions.php
#
#-----[ FIND ]---------------------------------------------
# Line 175
list($sec, $usec) = explode(' ', microtime());
mt_srand((float) $sec + ((float) $usec * 100000));
$session_id = md5(uniqid(mt_rand(), true));
#
#-----[ REPLACE WITH ]---------------------------------------------
#
$session_id = md5(dss_rand());
#
#-----[ FIND ]---------------------------------------------
# Line 208
list($sec, $usec) = explode(' ', microtime());
mt_srand(hexdec(substr($session_id, 0, 8)) + (float) $sec + ((float)
$usec * 1000000));
$auto_login_key = uniqid(mt_rand(), true);
#
#-----[ REPLACE WITH ]---------------------------------------------
#
$auto_login_key = dss_rand() . dss_rand();
#
#-----[ FIND ]---------------------------------------------
# Line 488
WHERE last_login < ' . (time() - (86400 * (int)
$board_config['max_autologin_time']));
$db->sql_query($sql);
}
return true;
#
#-----[ AFTER, ADD ]---------------------------------------------
#
}
/**
* Reset all login keys for the specified user
* Called on password changes
*/
function session_reset_keys($user_id, $user_ip)
{
global $db, $userdata;
$key_sql = ($user_id == $userdata['user_id'] &&
!empty($userdata['session_key'])) ? "AND key_id != '" .
md5($userdata['session_key']) . "'" : '';
$sql = 'DELETE FROM ' . SESSIONS_KEYS_TABLE . '
WHERE user_id = ' . (int) $user_id . "
$key_sql";
if ( !$db->sql_query($sql) )
{
message_die(CRITICAL_ERROR, 'Error removing auto-login keys', '',
__LINE__, __FILE__, $sql);
}
$where_sql = 'session_user_id = ' . (int) $user_id;
$where_sql .= ($user_id == $userdata['user_id']) ? " AND session_id <> '" .
$userdata['session_id'] . "'" : '';
$sql = 'DELETE FROM ' . SESSIONS_TABLE . "
WHERE $where_sql";
if ( !$db->sql_query($sql) )
{
message_die(CRITICAL_ERROR, 'Error removing user session(s)', '',
__LINE__, __FILE__, $sql);
}
if ( !empty($key_sql) )
{
$auto_login_key = dss_rand() . dss_rand();
$current_time = time();
$sql = 'UPDATE ' . SESSIONS_KEYS_TABLE . "
SET last_ip = '$user_ip', key_id = '" . md5($auto_login_key) . "',
last_login = $current_time
WHERE key_id = '" . md5($userdata['session_key']) . "'";
if ( !$db->sql_query($sql) )
{
message_die(CRITICAL_ERROR, 'Error updating session key', '', __LINE__,
__FILE__, $sql);
}
// And now rebuild the cookie
$sessiondata['userid'] = $user_id;
$sessiondata['autologinid'] = $autologin_id;
$cookiename = $board_config['cookie_name'];
$cookiepath = $board_config['cookie_path'];
$cookiedomain = $board_config['cookie_domain'];
$cookiesecure = $board_config['cookie_secure'];
setcookie($cookiename . '_data', serialize($sessiondata), $current_time +
31536000, $cookiepath, $cookiedomain, $cookiesecure);
$userdata['session_key'] = $auto_login_key;
unset($sessiondata);
unset($auto_login_key);
}
#
zie reply hieronder
Het probleem is dus dat ik bang ben dat ik een eerdere update gemist heb. Ik heb phpbb ooit via Lycos (online tools) laten installeren. Vervolgens kreeg ik zo nu en dan een bericht dat er een update beschikbaar was. Deze heb ik altijd netjes uitgevoerd. Vervolgens begon ik zelf met mods etc, en daarna dus alles handmatig gedaan. Het forum draait gewoon goed (alhoewel ik het nog niet intensief getest heb).
Na de update naar 0.20 zie ik overigens nergens concrete vernieuwingen aan het forum. Kan het zo zijn dat dit komt door gebruik van Freemind ipv SubSilver?
# Verder het volgende probleem. Ik moest het bestand lang_admin.php aanvullen met wat nieuwe informatie. Ook dit kan ik nergens vinden binnen de code op die pagina (language/lang_english/lang_admin.php). Ook hier merk ik geen verschil. Ik heb update_to_new_version gedraaid, alles gewoon ok verlopen. Het forum draait ook prima, maar ik zie simpelweg geen verbeteringen (maar wellicht is er ook niets visueel verbeterd.)
Code: Selecteer alles
#
language/lang_english/lang_admin.php
#
#-----[ FIND ]---------------------------------------------
# Line 339
$lang['Allow_autologin'] = 'Allow automatic logins';
$lang['Allow_autologin_explain'] = 'Determines whether users are allowed to
select to be automatically logged in when visiting the forum';
$lang['Autologin_time'] = 'Automatic login key expiry';
$lang['Autologin_time_explain'] = 'How long a autologin key is valid for in
days if the user does not visit the board. Set to zero to disable expiry.';
#
#-----[ AFTER, ADD ]---------------------------------------------
#
// Search Flood Control - added 2.0.20
$lang['Search_Flood_Interval'] = 'Search Flood Interval';
$lang['Search_Flood_Interval_explain'] = 'Number of seconds a user must wait
between search requests';
#
# Nog een laatste probleem(pje). In de upgrade van 0.18 naar 0.19 kon ik wel bij de engelse lang_admin.php onderstaande informatie toevoegen. Dit lukte echter niet bij de NL pack. Moet ik die pack nu dan opnieuw installeren, of kan ik ergens een vertaling hiervan vinden?
Code: Selecteer alles
language/lang_english/lang_admin.php
FIND - Line 749
2.0.18 Code:
//
// That's all Folks!
BEFORE, ADD
2.0.19 Code:
//
// Login attempts configuration
//
$lang['Max_login_attempts'] = 'Allowed login attempts';
$lang['Max_login_attempts_explain'] = 'The number of allowed board login attempts.';
$lang['Login_reset_time'] = 'Login lock time';
$lang['Login_reset_time_explain'] = 'Time in minutes the user have to wait until he is allowed to login again after exceeding the number of allowed login attempts.';
Ik wil graag dit weekend de upgrade doen van 0.20 naar 0.21, maar wil eerst nagaan of ik niet onnodig risico loop. Straks update ik rommel op rommel, en dan ben ik uiteindelijk toch een keer de pineut..
Alvast bedankt, misschien kan iemand mij op weg helpen.
DikkieD