[phpBB] Come aggiornare da phpBB 2.0.18 a phpBB 2.0.19

Php, PHP-Nuke, phpBB, Html, CSS, Javascript e tutto ciò che concerne la gestione siti web.
Avatar utente
AleSSaNDRo
WebMaster
WebMaster
Messaggi: 2358
Iscritto il: 24/04/2003, 1:11
Località: Milano

[phpBB] Come aggiornare da phpBB 2.0.18 a phpBB 2.0.19

Messaggio da AleSSaNDRo »

Da phpBB 2.0.18 a phpBB 2.0.19

Questo tutorial permette ai Webmaster che hanno moddato parecchio il proprio forum, di patcharselo da soli.

Dopo che hai finito di applicare queste modifiche, crea una cartella con nome install nella root del tuo forum(per capirci, dove si trova config.php) e uploda dentro a questa il file(update_to_latest.php) che è allegato a questo topic(possono vederlo e scaricarlo solo gli utenti registrati) dopo aver ovviamente prima scompattato il file(visto che è .zip! :wink:), eseguilo e poi elimina la cartella.

Ok, pronto?



  • admin/admin_board.php
  1. CERCA - Linea 19

    Codice: Seleziona tutto

    
    	$module['General']['Configuration'] = "$file";
    
    SOSTITUISCI CON

    Codice: Seleziona tutto

    
    	$module['General']['Configuration'] = $file;
    
  2. CERCA - Linea 194

    Codice: Seleziona tutto

    
    	"L_MAX_POLL_OPTIONS" => $lang['Max_poll_options'],
    	"L_FLOOD_INTERVAL" => $lang['Flood_Interval'],
    	"L_FLOOD_INTERVAL_EXPLAIN" => $lang['Flood_Interval_explain'], 
    
    DOPO, AGGIUNGI

    Codice: Seleziona tutto

    
    
    	'L_MAX_LOGIN_ATTEMPTS'			=> $lang['Max_login_attempts'],
    	'L_MAX_LOGIN_ATTEMPTS_EXPLAIN'	=> $lang['Max_login_attempts_explain'],
    	'L_LOGIN_RESET_TIME'			=> $lang['Login_reset_time'],
    	'L_LOGIN_RESET_TIME_EXPLAIN'	=> $lang['Login_reset_time_explain'],
    	'MAX_LOGIN_ATTEMPTS'			=> $new['max_login_attempts'],
    	'LOGIN_RESET_TIME'				=> $new['login_reset_time'],
    
    
  • admin/admin_db_utilities.php
  1. CERCA - Linea 696

    Codice: Seleziona tutto

    
    			$tables = array('auth_access', 'banlist', 'categories', 'config', 'disallow', 'forums', 'forum_prune', 'groups', 'posts', 'posts_text', 'privmsgs', 'privmsgs_text', 'ranks', 'search_results', 'search_wordlist', 'search_wordmatch', 'sessions', 'smilies', 'themes', 'themes_name', 'topics', 'topics_watch', 'user_group', 'users', 'vote_desc', 'vote_results', 'vote_voters', 'words', 'confirm');
    
    SOSTITUISCI CON

    Codice: Seleziona tutto

    
    			$tables = array('auth_access', 'banlist', 'categories', 'config', 'disallow', 'forums', 'forum_prune', 'groups', 'posts', 'posts_text', 'privmsgs', 'privmsgs_text', 'ranks', 'search_results', 'search_wordlist', 'search_wordmatch', 'sessions', 'smilies', 'themes', 'themes_name', 'topics', 'topics_watch', 'user_group', 'users', 'vote_desc', 'vote_results', 'vote_voters', 'words', 'confirm', 'sessions_keys');
    
  • admin/admin_disallow.php
  1. CERCA - Linea 28

    Codice: Seleziona tutto

    
    	$module['Users']['Disallow'] = append_sid($filename);
    
    SOSTITUISCI CON

    Codice: Seleziona tutto

    
    	$module['Users']['Disallow'] = $filename;
    
  • admin/admin_ranks.php
  1. CERCA - Linea 27

    Codice: Seleziona tutto

    
    	$module['Users']['Ranks'] = "$file";
    
    SOSTITUISCI CON

    Codice: Seleziona tutto

    
    	$module['Users']['Ranks'] = $file;
    
  • admin/admin_styles.php
  1. CERCA - Linea 30

    Codice: Seleziona tutto

    
    	$module['Styles']['Manage'] = "$file";
    
    SOSTITUISCI CON

    Codice: Seleziona tutto

    
    	$module['Styles']['Manage'] = $file;
    
  • admin/admin_users.php
  1. CERCA - Linea 180

    Codice: Seleziona tutto

    
    				message_die(GENERAL_ERROR, 'Could not delete user from banlist table', '', __LINE__, __FILE__, $sql);
    			}
    
    
    DOPO, AGGIUNGI

    Codice: Seleziona tutto

    
    			$sql = "DELETE FROM " . SESSIONS_TABLE . "
    				WHERE session_user_id = $user_id";
    			if ( !$db->sql_query($sql) )
    			{
    				message_die(GENERAL_ERROR, 'Could not delete sessions for this user', '', __LINE__, __FILE__, $sql);
    			}
    			
    			$sql = "DELETE FROM " . SESSIONS_KEYS_TABLE . "
    				WHERE user_id = $user_id";
    			if ( !$db->sql_query($sql) )
    			{
    				message_die(GENERAL_ERROR, 'Could not delete auto-login keys for this user', '', __LINE__, __FILE__, $sql);
    			}
    
    
  2. CERCA - Linea 234

    Codice: Seleziona tutto

    
    		$username = ( !empty($HTTP_POST_VARS['username']) ) ? trim(strip_tags(htmlspecialchars($HTTP_POST_VARS['username']))) : '';
    
    SOSTITUISCI CON

    Codice: Seleziona tutto

    
    		$username = ( !empty($HTTP_POST_VARS['username']) ) ? phpbb_clean_username($HTTP_POST_VARS['username']) : '';
    
  3. CERCA - Linea 407

    Codice: Seleziona tutto

    
    				if( @file_exists(@phpbb_realpath("./" . $board_config['avatar_path'] . "/" . $this_userdata['user_avatar'])) )
    				{
    					@unlink("./" . $board_config['avatar_path'] . "/" . $this_userdata['user_avatar']);
    
    SOSTITUISCI CON

    Codice: Seleziona tutto

    
    				if( @file_exists(@phpbb_realpath('./../' . $board_config['avatar_path'] . "/" . $this_userdata['user_avatar'])) )
    				{
    					@unlink('./../' . $board_config['avatar_path'] . "/" . $this_userdata['user_avatar']);
    
  • admin/admin_words.php
  1. CERCA - Linea 28

    Codice: Seleziona tutto

    
    	$module['General']['Word_Censor'] = "$file";
    
    SOSTITUISCI CON

    Codice: Seleziona tutto

    
    	$module['General']['Word_Censor'] = $file;
    
  • admin/index.php
  1. CERCA - Linea 63

    Codice: Seleziona tutto

    
    			include($file);
    
    SOSTITUISCI CON

    Codice: Seleziona tutto

    
    			include('./' . $file);
    
  2. CERCA - Linea 237

    Codice: Seleziona tutto

    
    			if( preg_match("/^(3\.23|4\.)/", $version) )
    			{
    				$db_name = ( preg_match("/^(3\.23\.[6-9])|(3\.23\.[1-9][1-9])|(4\.)/", $version) ) ? "`$dbname`" : $dbname;
    
    SOSTITUISCI CON

    Codice: Seleziona tutto

    
    			if( preg_match("/^(3\.23|4\.|5\.)/", $version) )
    			{
    				$db_name = ( preg_match("/^(3\.23\.[6-9])|(3\.23\.[1-9][1-9])|(4\.)|(5\.)/", $version) ) ? "`$dbname`" : $dbname;
    
  • includes/bbcode.php
  1. CERCA - Linea 203

    Codice: Seleziona tutto

    
    	$patterns[] = "#\[url\]([\w]+?://[\w\#$%&~/.\-;:=,?@\[\]+]*?)\[/url\]#is";
    	$replacements[] = $bbcode_tpl['url1'];
    
    	// [url]www.phpbb.com[/url] code.. (no xxxx:// prefix).
    	$patterns[] = "#\[url\]((www|ftp)\.[\w\#$%&~/.\-;:=,?@\[\]+]*?)\[/url\]#is";
    
    SOSTITUISCI CON

    Codice: Seleziona tutto

    
    	$patterns[] = "#\[url\]([\w]+?://([\w\#$%&~/.\-;:=,?@\]+]|\[(?!url=))*?)\[/url\]#is";
    	$replacements[] = $bbcode_tpl['url1'];
    
    	// [url]www.phpbb.com[/url] code.. (no xxxx:// prefix).
    	$patterns[] = "#\[url\]((www|ftp)\.([\w\#$%&~/.\-;:=,?@\]+]|\[(?!url=))*?)\[/url\]#is";
    
  2. CERCA - Linea 255

    Codice: Seleziona tutto

    
    	$text = bbencode_first_pass_pda($text, $uid, '/\[quote=(\\\".*?\\\")\]/is', '[/quote]', '', false, '', "[quote:$uid=\\1]");
    
    SOSTITUISCI CON

    Codice: Seleziona tutto

    
    	$text = bbencode_first_pass_pda($text, $uid, '/\[quote=\\\\"(.*?)\\\\"\]/is', '[/quote]', '', false, '', "[quote:$uid=\\\"\\1\\\"]");
    
  3. CERCA - Linea 392

    Codice: Seleziona tutto

    
    				if( preg_match('#\[quote=\\\"#si', $possible_start, $match) && !preg_match('#\[quote=\\\"(.*?)\\\"\]#si', $possible_start) )
    				{
    					// OK we are in a quote tag that probably contains a ] bracket.
    					// Grab a bit more of the string to hopefully get all of it..
    					if ($close_pos = strpos($text, '"]', $curr_pos + 9))
    					{
    						if (strpos(substr($text, $curr_pos + 9, $close_pos - ($curr_pos + 9)), '[quote') === false)
    						{
    							$possible_start = substr($text, $curr_pos, $close_pos - $curr_pos + 2);
    
    SOSTITUISCI CON

    Codice: Seleziona tutto

    
    				if( preg_match('#\[quote=\\\"#si', $possible_start, $match) && !preg_match('#\[quote=\\\"(.*?)\\\"\]#si', $possible_start) )
    				{
    					// OK we are in a quote tag that probably contains a ] bracket.
    					// Grab a bit more of the string to hopefully get all of it..
    					if ($close_pos = strpos($text, '"]', $curr_pos + 14))
    					{
    						if (strpos(substr($text, $curr_pos + 14, $close_pos - ($curr_pos + 14)), '[quote') === false)
    						{
    							$possible_start = substr($text, $curr_pos, $close_pos - $curr_pos + 7);
    
  • common.php
  1. CERCA - Linea 223

    Codice: Seleziona tutto

    
    	message_die(GENERAL_MESSAGE, 'Please ensure both the install/ and contrib/ directories are deleted');
    
    SOSTITUISCI CON

    Codice: Seleziona tutto

    
    	message_die(GENERAL_MESSAGE, 'Please_remove_install_contrib');
    
  • includes/functions.php
  1. CERCA - Linea 161

    Codice: Seleziona tutto

    
    	$sql .= ( ( is_integer($user) ) ? "user_id = $user" : "username = '" .  $user . "'" ) . " AND user_id <> " . ANONYMOUS;
    
    SOSTITUISCI CON

    Codice: Seleziona tutto

    
    	$sql .= ( ( is_integer($user) ) ? "user_id = $user" : "username = '" .  str_replace("\'", "''", $user) . "'" ) . " AND user_id <> " . ANONYMOUS;
    
  • includes/functions_post.php
  1. CERCA - Linea 28

    Codice: Seleziona tutto

    
    $html_entities_match = array('#&(?!(\#[0-9]+;))#', '#<#', '#>#');
    $html_entities_replace = array('&', '<', '>');
    
    SOSTITUISCI CON

    Codice: Seleziona tutto

    
    $html_entities_match = array('#&(?!(\#[0-9]+;))#', '#<#', '#>#', '#"#');
    $html_entities_replace = array('&', '<', '>', '"');
    
  • includes/usercp_confirm.php
  1. CERCA - Linea 156

    Codice: Seleziona tutto

    
    	if (!empty($HTTP_GET_VARS['c']))
    	{
    		$_png = define_raw_pngs();
    
    		$char = substr($code, intval($HTTP_GET_VARS['c']) - 1, 1);
    		header('Content-Type: image/png');
    		header('Cache-control: no-cache, no-store');
    		echo base64_decode($_png[$char]);
    
    		unset($_png);
    		exit;
    	}
    
    SOSTITUISCI CON

    Codice: Seleziona tutto

    
    	$_png = define_raw_pngs();
    
    	$char = substr($code, -1);
    	header('Content-Type: image/png');
    	header('Cache-control: no-cache, no-store');
    	echo base64_decode($_png[$char]);
    
    	unset($_png);
    	exit;
    
  • includes/usercp_register.php
  1. CERCA - Linea 110

    Codice: Seleziona tutto

    
    	$strip_var_list = array('username' => 'username', 'email' => 'email', 'icq' => 'icq', 'aim' => 'aim', 'msn' => 'msn', 'yim' => 'yim', 'website' => 'website', 'location' => 'location', 'occupation' => 'occupation', 'interests' => 'interests');
    	$strip_var_list['confirm_code'] = 'confirm_code';
    
    SOSTITUISCI CON

    Codice: Seleziona tutto

    
    	$strip_var_list = array('email' => 'email', 'icq' => 'icq', 'aim' => 'aim', 'msn' => 'msn', 'yim' => 'yim', 'website' => 'website', 'location' => 'location', 'occupation' => 'occupation', 'interests' => 'interests', 'confirm_code' => 'confirm_code');
    
  2. CERCA - Linea 126

    Codice: Seleziona tutto

    
    	$trim_var_list = array('cur_password' => 'cur_password', 'new_password' => 'new_password', 'password_confirm' => 'password_confirm', 'signature' => 'signature');
    
    PRIMA, AGGIUNGI

    Codice: Seleziona tutto

    
    	$username = ( !empty($HTTP_POST_VARS['username']) ) ? phpbb_clean_username($HTTP_POST_VARS['username']) : '';
    
    
  3. CERCA - Linea 301

    Codice: Seleziona tutto

    
    				if ($row['code'] != $confirm_code)
    
    PRIMA, AGGIUNGI

    Codice: Seleziona tutto

    
    				// Only compare one char if the zlib-extension is not loaded
    				if (!@extension_loaded('zlib'))
    				{
    					$row['code'] = substr($row['code'], -1);
    				}
    
    
  • language/lang_english/lang_admin.php
  1. CERCA - Linea 749

    Codice: Seleziona tutto

    
    //
    // That's all Folks!
    
    PRIMA, AGGIUNGI

    Codice: Seleziona tutto

    
    //
    // 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.';
    
    
  • language/lang_english/lang_main.php
  1. CERCA - Linea 1021

    Codice: Seleziona tutto

    
    //
    // That's all, Folks!
    
    PRIMA, AGGIUNGI

    Codice: Seleziona tutto

    
    $lang['Login_attempts_exceeded'] = 'The maximum number of %s login attempts has been exceeded. You are not allowed to login for the next %s minutes.';
    $lang['Please_remove_install_contrib'] = 'Please ensure both the install/ and contrib/ directories are deleted';
    
    
  • login.php
  1. CERCA - Linea 60

    Codice: Seleziona tutto

    
    		$sql = "SELECT user_id, username, user_password, user_active, user_level
    
    SOSTITUISCI CON

    Codice: Seleziona tutto

    
    		$sql = "SELECT user_id, username, user_password, user_active, user_level, user_login_tries, user_last_login_try
    
  2. CERCA - Linea 79

    Codice: Seleziona tutto

    
    				if( md5($password) == $row['user_password'] && $row['user_active'] )
    
    PRIMA, AGGIUNGI

    Codice: Seleziona tutto

    
    				// If the last login is more than x minutes ago, then reset the login tries/time
    				if ($row['user_last_login_try'] && $board_config['login_reset_time'] && $row['user_last_login_try'] < (time() - ($board_config['login_reset_time'] * 60)))
    				{
    					$db->sql_query('UPDATE ' . USERS_TABLE . ' SET user_login_tries = 0, user_last_login_try = 0 WHERE user_id = ' . $row['user_id']);
    					$row['user_last_login_try'] = $row['user_login_tries'] = 0;
    				}
    				
    				// Check to see if user is allowed to login again... if his tries are exceeded
    				if ($row['user_last_login_try'] && $board_config['login_reset_time'] && $board_config['max_login_attempts'] && 
    					$row['user_last_login_try'] >= (time() - ($board_config['login_reset_time'] * 60)) && $row['user_login_tries'] >= $board_config['max_login_attempts'])
    				{
    					message_die(GENERAL_MESSAGE, sprintf($lang['Login_attempts_exceeded'], $board_config['max_login_attempts'], $board_config['login_reset_time']));
    				}
    
    
  3. CERCA - Linea 97

    Codice: Seleziona tutto

    
    					$admin = (isset($HTTP_POST_VARS['admin'])) ? 1 : 0;
    					$session_id = session_begin($row['user_id'], $user_ip, PAGE_INDEX, FALSE, $autologin, $admin);
    
    
    DOPO, AGGIUNGI

    Codice: Seleziona tutto

    
    					// Reset login tries
    					$db->sql_query('UPDATE ' . USERS_TABLE . ' SET user_login_tries = 0, user_last_login_try = 0 WHERE user_id = ' . $row['user_id']);
    
    
  4. CERCA - Linea 115

    Codice: Seleziona tutto

    
    					$redirect = ( !empty($HTTP_POST_VARS['redirect']) ) ? str_replace('&', '&', htmlspecialchars($HTTP_POST_VARS['redirect'])) : '';
    					$redirect = str_replace('?', '&', $redirect);
    
    PRIMA, AGGIUNGI

    Codice: Seleziona tutto

    
    					// Save login tries and last login
    					if ($row['user_id'] != ANONYMOUS)
    					{
    						$sql = 'UPDATE ' . USERS_TABLE . '
    							SET user_login_tries = user_login_tries + 1, user_last_login_try = ' . time() . '
    							WHERE user_id = ' . $row['user_id'];
    						$db->sql_query($sql);
    					}
    					
    
  • privmsg.php
  1. CERCA - Linea 38

    Codice: Seleziona tutto

    
    $html_entities_match = array('#&(?!(\#[0-9]+;))#', '#<#', '#>#');
    $html_entities_replace = array('&', '<', '>');
    
    SOSTITUISCI CON

    Codice: Seleziona tutto

    
    $html_entities_match = array('#&(?!(\#[0-9]+;))#', '#<#', '#>#', '#"#');
    $html_entities_replace = array('&', '<', '>', '"');
    
  • templates/subSilver/admin/board_config_body.tpl
  1. CERCA - Linea 59

    Codice: Seleziona tutto

    
    		<td class="row2"><input class="post" type="text" size="3" maxlength="4" name="flood_interval" value="{FLOOD_INTERVAL}" /></td>
    	</tr>
    
    DOPO, AGGIUNGI

    Codice: Seleziona tutto

    
    	<tr>
    		<td class="row1">{L_MAX_LOGIN_ATTEMPTS}<br /><span class="gensmall">{L_MAX_LOGIN_ATTEMPTS_EXPLAIN}</span></td>
    		<td class="row2"><input class="post" type="text" size="3" maxlength="4" name="max_login_attempts" value="{MAX_LOGIN_ATTEMPTS}" /></td>
    	</tr>
    	<tr>
    		<td class="row1">{L_LOGIN_RESET_TIME}<br /><span class="gensmall">{L_LOGIN_RESET_TIME_EXPLAIN}</span></td>
    		<td class="row2"><input class="post" type="text" size="3" maxlength="4" name="login_reset_time" value="{LOGIN_RESET_TIME}" /></td>
    	</tr>
    
  • templates/subSilver/admin/index_body.tpl
  1. CERCA - Linea 46

    Codice: Seleziona tutto

    
    	<td class="row2"><b>{GZIP_COMPRESSION}</b></td>
      </tr>
    </table>
    
    DOPO, AGGIUNGI

    Codice: Seleziona tutto

    
    
    <h1>{L_VERSION_INFORMATION}</h1>
    
    {VERSION_INFO}
    
    <br />
    
    
  2. CERCA - Linea 87

    Codice: Seleziona tutto

    
    
    <h1>{L_VERSION_INFORMATION}</h1>
    
    {VERSION_INFO}
    
    <br />
    
    SOSTITUISCI CON (quindi elimina)

Chi c’è in linea

Visitano il forum: Claude [Bot] e 0 ospiti